简单记录一下 halo 的部署、备份恢复,以备后续服务器迁移时用作参考。
详细部署过程,请前往 halo 官方站查看:https://docs.halo.run/
当前(2024年4月)最新版本是 2.14.x,官网推荐使用 docker-compose 安装,本人也是采纳官网的建议,使用了 docker-compose。
一、提前准备(安装)
1、需要有一台服务器(我是阿里云2核2M带宽的配置)
2、最好买一个域名(备案),没有的话用 IP 也是能用的。只是个人觉得不方便,ip 记忆反人类,也不好输入。
3、云服务商安全组开放 443 端口。
4、docker:参考官网安装,或者查看 docker 安装的文章
5、docker-compose:参考官网安装,或者查看安装的文章
二、安装步骤
1、在系统任意位置创建一个文件夹,此文档以 ~/halo
为例
mkdir ~/halo && cd ~/halo
2、创建 docker-compose.yaml
这里使用 Halo + MySQL 的配置,docker-compse.yml 内容请查看官网文档。
3、使用 Nginx Proxy Manager 转发到 8090 端口
Nginx Proxy Manager 是 Web UI,本质还是使用 Nginx 来转发。但 NPM 门槛极低,不会 Nginx 也能通过页面轻松地配置。安装 NPM 会默认安装上 Nginx。
详情参考本站文章 Nginx 和 Nginx Proxy Manager 的安装和使用(CentOS7)。
使用 Nginx 反代,而不是让 Halo 一个服务占用 80/443 端口,后续方便扩展服务器的其他能力。
4、启停、日志命令
启动项目:dockerc up -d
停止项目:dockerc down
查看日志:dockerc logs -f
dockerc 是建立了软链接,链接到了 docker-compose。
4、halo 升级版本或者换了一个域名
使用命令停止项目。升级版本直接修改 yml 中的 halo 版本(看官网,不能升级会有写的。一般不是跨多个大版本,或者底层做了大变动都是可以升级的),域名则是修改 halo.external-url,wq
保存。启动项目即可。
三、备份和恢复
halo 内置了备份和恢复功能,傻瓜式操作。
登录 halo,菜单栏找到备份,点击备份,下载备份压缩包到本地。
比如我们要迁移服务器,新服务器搭好了 halo 服务,登录进去,找到备份 | 恢复,上传之前下载的备份压缩包即可。