从WordPress转向Halo的记录(步骤及教程)
因为原先WordPress的Sakurairo主题加载过于缓慢,与其十分臃肿,就换了Halo
1.备份原有WordPress(WXR)文件
在 WordPress 管理后台的 工具-导出 菜单中,选择导出 所有内容 来导出你的 WordPress 数据,下载导出的文件后会得到一个 XML 文件。并且把wp-content/uploads下的文件打包备份。(具体可参考:halo迁移)
2.安装Halo(Docker Compose安装)
这里以宝塔面板9.1.0为例
进入到宝塔面板,找到Docker栏目,如果没安装就安装,安装完成后如下图

接着点击上方的编排模板 -> 添加 -> 随便输入一个模板名

输入一个名字

之后把下面的配置文件复制进”内容“文本框里面(示例注意一定要修改好自己的密码!!):
services:
halo:
image: registry.fit2cloud.com/halo/halo:2
restart: on-failure:3
depends_on:
halodb:
condition: service_healthy
networks:
halo_network:
volumes:
- ./halo2:/root/.halo2
ports:
- "8090:8090"
healthcheck:
test:
["CMD", "curl", "-f", "http://localhost:8090/actuator/health/readiness"]
interval: 30s
timeout: 5s
retries: 5
start_period: 30s
environment:
# JVM 参数,默认为 -Xmx256m -Xms256m,可以根据实际情况做调整,置空表示不添加 JVM 参数
- JVM_OPTS=-Xmx256m -Xms256m
command:
- --spring.r2dbc.url=r2dbc:pool:postgresql://halodb/halo
- --spring.r2dbc.username=halo
# PostgreSQL 的密码,请保证与下方 POSTGRES_PASSWORD 的变量值一致。
- --spring.r2dbc.password=openpostgresql
- --spring.sql.init.platform=postgresql
# 外部访问地址,请根据实际需要修改
- --halo.external-url=http://localhost:8090/
halodb:
image: postgres:15.4
restart: on-failure:3
networks:
halo_network:
volumes:
- ./db:/var/lib/postgresql/data
healthcheck:
test: ["CMD", "pg_isready"]
interval: 10s
timeout: 5s
retries: 5
environment:
- POSTGRES_PASSWORD=openpostgresql
- POSTGRES_USER=halo
- POSTGRES_DB=halo
- PGUSER=halo
networks:
halo_network:(关于配置文件相关键值的详细介绍,详见:链接)。
修改完你的密码后按确定就行了。之后会出现你刚刚创建的模板,旁边有一个"拉取镜像"按钮,按下后耐心等待即可,成功之后,本地镜像栏目下应该会有两个镜像。

之后再点击容器栏目 -> 创建容器 -> 容器编排 -> 选择你刚刚命名的模板 -> 随便输入名称 -> 确定
之后就会开始创建,可能会需要一点时间。详细步骤见下图。

之后应该就会直接启动了,至此Halo安装完成。
要实现外部访问,还需要开放端口,具体步骤为:在宝塔中选择安全栏目 -> 添加端口规则 -> 协议TCP不变 -> 端口输入8090 -> 确定

3.设置反向代理(可选)
因为默认Halo监听8090端口,而不是在80或者443端口,并且不支持SSL,反向代理就可以解决这些。
在宝塔中选择网站栏目 -> PHP项目 -> 添加站点 -> 域名输入 -> PHP版本选择7.4

之后选择操作下的设置 -> 反向代理 -> 添加反向代理 -> 在目标URL中输入:http://你的服务器公网IP:8090/ 发送域名输入你刚刚绑定的域名 -> 确定

注意这里的服务器IP要换成你自己的,还有域名。
如果要配置SSL,选择SSL自行配置即可,这里就不演示了,记得要勾选强制HTTPS。
4.初始化Halo并导入WordPress数据
之后访问你的网站,后面加上/console让Halo初始化,这时会让你设置用户名密码之类的,设置就好了。
接着会进入Halo的后台控制界面,访问站点迁移插件,选择下载,用方式二安装,方式一是找不到这个插件的!!!
安装并启用插件后,在左边栏下滑,选择"迁移",之后上传你备份好的WXR文件根据向导继续即可

之后选择左边栏的附件,根据你原先的目录结构(uploads下的目录结构),去上传并创建,这里就不演示了。
5.安装Hao主题(可选)
个人觉得是Halo中最好的主题
打开Hao主题的Github Releases页面,下载好主题(按图示选择)

下载完之后打开你的网站后台,选择左边栏外观下的"主题"栏目 -> 右上角主题管理 -> 上传安装/升级
上传你的主题并启用,你的主题就设置完成了,之后个性化设置也可以在"主题"栏目中设置。


至此,全部步骤完成
6.问题
所有问题可以在评论中提出,有时间都会回复的,只是简单的记录,可能没那么详细,谅解一下~