快速搭建Halo博客 + 崩溃秒恢复方案(Docker极简部署)

快速搭建Halo博客 + 崩溃秒恢复方案(Docker极简部署)


前言

想搭建一个简洁美观的个人博客,要求:

  • 部署简单快捷
  • 占用空间小
  • 崩溃/重装后能快速恢复
  • 无需备案、无需复杂配置

经过对比,最终选择 Docker + Halo2 方案,轻量、稳定、备份迁移极其方便。


一、环境说明

  • 系统:Ubuntu 20.04(其他Debian系也通用)
  • 架构:x86_64
  • 工具:Docker + Halo2
  • 优势:一键启动、备份仅一个文件夹、恢复秒级

二、完整部署流程(从0到上线)

1. 更新软件源(安全更新,不升级系统版本)

bash 复制代码
apt update && apt upgrade -y

中途如果出现 SSH 配置文件提示:

选择 keep the local version currently installed → OK

2. 安装Docker依赖

bash 复制代码
apt install apt-transport-https ca-certificates curl software-properties-common -y

3. 添加Docker官方GPG密钥

bash 复制代码
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg

4. 添加Docker软件源

bash 复制代码
echo "deb [arch=amd64 signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu focal stable" | tee /etc/apt/sources.list.d/docker.list

5. 安装Docker

bash 复制代码
apt update
apt install docker-ce docker-ce-cli containerd.io -y

6. 验证Docker安装成功

bash 复制代码
docker --version

出现版本号即成功。

7. 创建Halo数据目录(用于持久化保存)

所有文章、图片、配置都存在这里,备份只需要备份这个目录

bash 复制代码
mkdir -p /root/halo

8. 一键启动Halo博客

bash 复制代码
docker run -d \
  --name halo \
  --restart always \
  -p 80:8090 \
  -v /root/halo:/root/halo \
  halohub/halo:2.18

9. 访问博客初始化

浏览器访问:

复制代码
http://你的公网IP

按照提示设置管理员账号、密码,完成安装即可进入后台。


三、Halo日常管理命令(必备)

bash 复制代码
# 查看运行状态
docker ps

# 停止博客
docker stop halo

# 启动博客
docker start halo

# 重启博客
docker restart halo

# 查看日志
docker logs -f halo

四、最重要:崩溃/重装系统后快速恢复

这是本方案最大优势:数据完全独立,恢复只需3步

1. 备份(平时只需要备份这个文件夹)

bash 复制代码
tar -zcvf halo_backup.tar.gz /root/halo

下载到本地保存。

2. 恢复流程(重装后)

  1. 重新执行本文 第1~6步 安装Docker

  2. 创建目录:

    bash 复制代码
    mkdir -p /root/halo
  3. 将备份的 halo 文件夹上传覆盖到 /root/halo

  4. 执行启动命令:

    bash 复制代码
    docker run -d \
      --name halo \
      --restart always \
      -p 80:8090 \
      -v /root/halo:/root/halo \
      halohub/halo:2.18

恢复完成!所有文章、主题、配置、图片完全不变。


五、空间占用说明

  • Docker:≈200MB
  • Halo镜像:≈300MB
  • 博客数据:纯文字仅几MB,大量图片也就几百MB
  • 整体占用:500MB~1GB
    小容量毫无压力。

六、总结

这套 Docker + Halo 方案非常适合:

  • 不想折腾数据库
  • 追求极简部署
  • 需要快速备份、快速迁移、快速恢复
  • 想要美观现代的博客系统

一条命令启动,一个文件夹备份

相关推荐
·薯条大王7 小时前
经济实惠玩云服务器|一台云服务器多人共用,子账号配置教程
java·linux·运维·服务器·汇编·c++·python
小小、码农10 小时前
Linux进程控制:从fork到exec,手写一个简易Shell
linux·运维·服务器
不会就选b11 小时前
Linux之进程间通信(二)---模拟进程池
linux·运维·服务器
沫璃染墨13 小时前
《从零入门Linux系统篇(十五):系统工具篇·六——GDB调试器详解:从程序执行控制到高级调试技巧》
linux·运维·服务器·c语言·c++
AIgorithmGEEK13 小时前
Linux 环境变量完全指南:从入门到理解底层原理
linux·运维·服务器
修罗王13 小时前
Linux Docker 服务管理与排查实战指南(新手速查版)
运维·docker
迪康Defender14 小时前
从静态存储到动态流转:终端透明加密两种模式实战解析
运维·服务器·网络·数据库·其他
酷可达拉斯14 小时前
Linux操作系统-升级OpenSSH修复漏洞
linux·运维·服务器·云计算
云川之下16 小时前
【k8s】NAD(NetworkAttachmentDefinition)与SR‑IOV‑Operator 关系
云原生·容器·kubernetes
张龙68716 小时前
Docker 镜像瘦身实战:从 1.2GB 到 128MB,我踩过的 7 个坑和一套可复制的方法论
运维·后端·docker