个人家庭 NAS 的 Docker 服务编排。用一份 docker-compose.yml 管理影视自动化、私有云盘、电子书库和智能家居等服务。
域名:lich.tech(证书通过 Cloudflare DNS 校验签发)。
| 服务 | 用途 |
|---|---|
| qBittorrent | BT 下载客户端 |
| Jackett | 种子索引聚合,为 Radarr/Sonarr 提供搜索源 |
| Radarr | 电影自动化管理 |
| Sonarr | 剧集自动化管理 |
| Bazarr | 字幕自动下载 |
| Ombi | 影视求片/媒体请求 |
| AutoBangumi | 番剧自动追更 |
| Nextcloud | 私有云盘 |
| Calibre-Web | 电子书库 |
| Home Assistant | 智能家居中枢 |
| Certbot | Let's Encrypt 证书签发(Cloudflare DNS) |
| Watchtower | 自动更新容器镜像 |
docker-compose.yml 服务编排定义
.env 环境变量(home_path 等)
config/ 各服务持久化配置与数据(不纳入 git)
data/ 挂载的媒体/存储盘
Downloads/ 下载目录
config/、data/、Downloads/、日志和大于 5M 的文件都在.gitignore中,不会提交。仓库只保存编排定义和运维脚本。
| 脚本 | 作用 |
|---|---|
restart.sh |
重启全部服务:compose down → pull → 清理旧镜像 → up -d |
check_and_restart.sh |
检查 data/ 挂载点是否就绪,挂载成功才执行 restart.sh(适合开机/定时任务,避免盘未挂载就启动) |
renew_cert.sh |
用 Certbot + Cloudflare DNS 为 lich.tech 续签证书 |
# 启动全部服务
sudo docker compose up -d
# 查看状态 / 日志
sudo docker compose ps
sudo docker compose logs -f <service>
# 完整重启并更新镜像
bash restart.sh
# 续签证书
bash renew_cert.sh- 首次部署前需确认
data/存储盘已正确挂载。 renew_cert.sh需要config/certbot/conf/cloudflare.ini提供 Cloudflare API 凭证。- 服务数据全部在
config/下,迁移或备份时需一并保留。