Halo博客官网:Halo
Halo官方文档:Halo Docs
Halo博客主题:Halo主题
部署Halo个人博客特点:
- 代码开源
所有代码开源在 GitHub 上且处于积极维护状态,截止目前已经发布了 81 个版本。您也可以在上面提交您的问题或者参与代码贡献。 - 易于部署
采用了程序与用户配置分离的方式,迁移和备份成本大大降低。您只需要一条命令即可运行成功,同时也支持 Docker 部署。 - REST API
提供了完善的 Content API 和 Admin API,你可以用于开发单页面模板,微信小程序,各种系统的插件等。 - 模板系统
完善的模板系统,支持自定义配置,支持在线安装和更新。开发主题也十分方便,欢迎大家参与主题的开发。 - 附件系统
支持本地上传,阿里云 OSS/又拍云 OSS/七牛云 OSS/SM.MS 等云存储,你可以更方便的管理你文章中的附件。 - 评论系统
拥有独立的评论插件,使用 Vue 开发,只需在页面引入构建好的 JS 文件即可,完美地和主题相结合。目前已有多款评论组件,你可以非常方便的切换。
开始部署
因为是Docker系列,这里使用的是Docker部署。
1. 创建一个Docker网络
sudo docker network create docker_network
创建Docker网络特点:可以使用 NginxProxyManager
易于管理域名映射。
2. 创建一个数据存储路径易于搬迁或管理
sudo mkdir -p /home/docker/halo && cd /home/docker/halo
3. 一键部署脚本
sudo nano docker-compose.yml
version: "3" #版本
services: #服务
halo: #命名
image: halohub/halo #拉取最新版图像
container_name: halo #图像命名
restart: unless-stopped #重启动作
ports: #端口映射
- "28090:8090" #8090是默认管理端口
volumes: #存储卷【保存数据的地方】
- ./:/root/.halo # “./”意思是在当前目录保存,“:”后面就是halo数据默认位置
- /etc/timezone:/etc/timezone:ro #默认即可
- /etc/localtime:/etc/localtime:ro #默认即可
logging: #日志
driver: "json-file" #日志映射卷
options: #日志存储管理
max-size: "20m" #单个日志大小
max-file: "10" #限制最多保存的日志文件数量
networks:
default:
external:
name: docker_network #网络映射【Docker每个项目都会给予一个网络,这里可以指定一个】
4. 安装脚本执行
sudo docker compose up -d