Halo博客服务器迁移
由于本人使用国外的VPS搭建博客,总是感觉万一哪天服务器挂了数据就会丢失,所以记录一下关于halo博客的备份工作。
1. 环境参数
- halo版本:v1.2.0
- 数据库:H2
- 部署工具: Docker version 19.03.5, build 633a0ea
2. Halo数据备份
- 在halo控制台的系统模块里面选择小工具
- 点击备份
在弹出的侧边栏中点击备份,结果如下
- 下载备份压缩包
点击文件名,下载压缩包
3. 上传备份文件到新服务器
在上传备份文件之前,可以在新服务器内将docker安装好,并使用docker拉取halo生成镜像(记住先不要创建和运行容器)。具体环境搭建可看官网:https://halo.run/guide/install/install-with-docker.html
:warning: 记住在安装halo时不需要下载配置文件到~/.halo
目录
:point_right: 即下面这步不需要:
具体步骤:
安装docker
按照官网教程安装拉取halo最新镜像
1
sudo docker pull ruibaby/halo
上传压缩包文件到服务器的
~/.halo
目录
我是用xftp
工具上传的。解压zip压缩包
1
uzip 文件名
创建和运行docker容器
1
docker run -it -d --name halo -p 8090:8090 -v ~/.halo:/root/.halo ruibaby/halo
4. 修改数据库内容
如果迁移博客需要修改网址,并且写文章时图片是通过halo上传的,那么就需要修改
数据库中
文章的图片网址。接下来以h2数据库为例
, 首先需要登录到h2-console面板, 教程见文章。
这里需要修改以下三部分内容
- 修改POSTS表中ORIGINAL_CONTENT内容
- 修改POSTS表中FORMAT_CONTENT内容
- 修改POSTS表中THUMBNAIL内容
SQL代码如下:
这里blog.kerviaxxx.top迁移之前的域名,迁移后的域名为kerviaxxx.top
1 | UPDATE POSTS SET ORIGINAL_CONTENT=REPLACE(ORIGINAL_CONTENT, 'blog.kerviaxxx.top', 'kerviaxxx.top') WHERE ORIGINAL_CONTENT like '%blog.kerviaxxx.top%'; |
相关文章