halo官网:https://docs.halo.run/
halo社区:https://bbs.halo.run/

准备工作

1
2
3
4
5
6
# 切换到root用户
sudo -i
# 升级packages
# Debian系统比较干净,安装常用的软件
apt update -y
apt install wget curl sudo vim git

1.创建halo项目文件夹

1
mkdir ~/.halo && cd ~/.halo

2.下载示例配置文件到 工作目录

1
wget https://dl.halo.run/config/application-template.yaml -O ./application.yaml

3.编辑配置文件,配置数据库或者端口等,如需配置请参考 配置参考

1
vim application.yaml

4.拉取最新的 Halo 镜像

1
docker pull halohub/halo:1.6.1

5.创建容器

1
docker run -it -d --name halo -p 8090:8090 -v ~/.halo:/root/.halo --restart=unless-stopped halohub/halo:1.6.1

halo后台 0.0.0.0:8090/admin

6.更新

6.1.停止并删除当前运行中的容器

1
2
docker stop halo
docker rm -f halo

你的容器名称不一定为 halo,在执行前可以先执行 docker ps -a 查看一下。

6.2.备份数据(重要)

1
cp -r ~/.halo ~/.halo.archive

需要注意的是,.halo.archive 文件名不一定要根据此文档命名,这里仅仅是个示例。

6.3.清空 leveldb 缓存(如果有使用 leveldb 作为缓存策略)

1
rm -rf ~/.halo/.leveldb

6.4.拉取最新的 Halo 镜像

1
docker pull halohub/halo:1.6.1

查看最新版本镜像:https://hub.docker.com/r/halohub/halo ,我们推荐使用具体版本号的镜像,但也提供了 latest 标签的镜像,它始终是最新的。

6.5.创建容器

1
docker run -it -d --name halo -p 8090:8090 -v ~/.halo:/root/.halo --restart=unless-stopped halohub/halo:1.6.1

-it: 开启输入功能并连接伪终端
-d: 后台运行容器
–name: 为容器指定一个名称
-p: 端口映射,格式为 主机(宿主)端口:容器端口 ,可在 application.yaml 配置。
-v: 工作目录映射。形式为:-v 宿主机路径:/root/.halo,后者不能修改。
–restart: 建议设置为 unless-stopped,在 Docker 启动的时候自动启动 Halo 容器。

7. 卸载

1
2
3
4
5
6
7
sudo -i  # 切换到root

docker stop halo

docker rm -f halo

rm -rf ~/.halo # 完全删除映射到本地的数据

文章内容和代码来源于网络,如有侵权请联系站长立即删除。