讲故事

halo博客升级2.0了,可以说升级了很久了,但是我一直都没有升级。因为从本站创建,一直使用halo-1.0开源项目进行部署,只是写一些文章娱乐自己来说,已经是够用了。所以升级这件事就是可有可无,不升级也足够使用了。

但是想想halo项目升级2.0已经有一年多了,现在升级应该是很稳定了。

Halo2.0

Halo官网:https://halo.run
Github:https://github.com/halo-dev/halo
Halo官方文档:https://docs.halo.run

官网上已经有很详细的迁移教程了,本文记录一下升级的过程。

备份Halo1.X

  • 进入Halo后台,找到小工具中的博客备份
  • 点击备份数据
  • 将备份好的.json文件下载到本地
  • 备份halo/upload目录,这是本地上传附件的目录

创建数据库

  • halo2创建数据库,halo2db

配置Halo2.0

创建halo2的目录

# 创建halo2的目录,跟halo-1.x不是一个目录,防止冲突
mkdir /data/halo2

创建docker-compose.yml文件

version: "3"

services:
  halo2:
    image: halohub/halo:2.11
    container_name: halo2
    restart: unless-stopped
    network_mode: "bridge"
    volumes:
      - /data/halo2:/root/.halo2
    ports:
      - "127.0.0.1:8000:8090"
    healthcheck:
      test: ["CMD", "curl", "-f", "http://localhost:8090/actuator/health/readiness"]
      interval: 30s
      timeout: 5s
      retries: 5
      start_period: 30s
    command:
      - --spring.r2dbc.url=r2dbc:pool:mysql://172.17.0.1:3306/halo2db?characterEncoding=utf8&useSSL=false&serverTimezone=Asia/Shanghai&allowPublicKeyRetrieval=true
      - --spring.r2dbc.username=your_username
      # MySQL 的密码,请保证与下方 MYSQL_ROOT_PASSWORD 的变量值一致。
      - --spring.r2dbc.password=your_password
      - --spring.sql.init.platform=mysql
      # 外部访问地址,请根据实际需要修改
      - --halo.external-url=https://willxup.top/

启动Halo2.0

# 进行/data/halo2目录下
docker-compose up -d

配置nginx

  • 可以将之前的nginx配置改到halo2的端口上
location / {
	proxy_pass http://127.0.0.1:8000; #配置halo的端口号,要与halo的端口一致
	proxy_set_header HOST $host;
	proxy_set_header X-Forwarded-Proto $scheme;
	proxy_set_header X-Real-IP $remote_addr;
	proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
  • 进入博客网站,会初始化halo

安装插件

halo2去除了很多之前自带的插件,现在需要重新下载必要的插件。

插件安装完后,记得看看有没有启动。

迁移旧数据

  • 数据迁移:找到站点迁移插件,按步骤往下走即可,将之前备份的.json文件上传进去即可。
  • 附件迁移:将halo1.0upload目录下的所有文件移到/data/halo2/attachments/migrate-from-1.x目录下即可。

开始使用Halo2

迁移完成后,就基本可以使用了。但是有一些页面配置及主题设置需要重新调整。按照自己之前配置halo1.0的方式去重新配置即可。

文章作者: Willxup
本文链接:
版权声明: 本站所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 Willxup
Linux Linux CentOS Nginx MySQL Halo Docker docker-compose
喜欢就支持一下吧