BWH 重装前 Docker 迁移清单
更多语言
更多操作
适用场景
在 BandwagonHost(搬瓦工 BWH)VPS 上使用 Docker 部署了服务(例如 Nginx Proxy Manager、Vaultwarden、Uptime Kuma、Sub-Store 等)后,如果准备通过 KiwiVM 重装系统,建议在重装前按本文步骤完成备份。
本文目标: 避免重装后 Docker 配置、数据目录或 Volume 丢失,导致服务无法快速恢复。
重装前:先确认有哪些容器在运行 docker ps -a
建议把输出截图/复制保存,方便重装后对照恢复。
第一步:找到 docker-compose.yml(最关键)
重装后要恢复服务,本质上就是:
找回 compose 文件 → 启动容器 → 数据还原(如有)
如果你忘了 compose 放哪了,可以全盘搜索:
find / -name "docker-compose.yml" 2>/dev/null find / -name "compose.yml" 2>/dev/null 第二步:备份项目目录(推荐统一放 /opt)
第二步:备份项目目录(推荐统一放 /opt)
如果你的 Docker 项目都放在 /opt 或 /opt/apps(常见习惯),可以直接打包备份:
tar -czvf docker-apps-backup.tar.gz /opt
备份包生成后,建议下载到本地保存(或上传到网盘)。
第三步:确认是否使用了 Docker Volume(很多数据都在这里)
列出 Volume:
docker volume ls
查看某个 Volume 是否真的有用(可选):
docker volume inspect VOLUME_NAME 第四步:备份 Docker Volume(通用方法)
第四步:备份 Docker Volume(通用方法)
如果你的服务数据使用的是 Docker Volume(而不是挂载在项目目录),需要额外备份 Volume 数据。
备份命令(通用模板):
docker run --rm \
-v VOLUME_NAME:/data \ -v $(pwd):/backup \ alpine sh -c "cd /data && tar -czf /backup/VOLUME_NAME.tar.gz ."
说明:
VOLUME_NAME.tar.gz 会出现在你当前目录(pwd)下
可以对关键服务的 volume 逐个备份
重装后恢复(简要流程)
1)安装 Docker + Compose确保 Compose 命令可用:
docker compose version
2)上传并解压项目目录备份 tar -xzvf docker-apps-backup.tar.gz -C /
3)进入项目目录启动服务
以某个项目为例:
cd /opt/你的项目目录 docker compose up -d
查看是否启动成功:
docker ps
4)如果你备份了 Volume:恢复 Volume 数据(可选)
先创建 Volume(如果不存在):
docker volume create VOLUME_NAME
再恢复数据:
docker run --rm \
-v VOLUME_NAME:/data \ -v $(pwd):/backup \ alpine sh -c "cd /data && tar -xzvf /backup/VOLUME_NAME.tar.gz"
常见问题:重装后启动失败怎么办?
1)端口冲突(最常见) ss -lntp
2)Docker 服务未启动 systemctl status docker --no-pager
总结
重装前只要记住两件事:
备份 compose 文件 + 项目目录(/opt)
备份关键 Docker Volume(如果有)
重装后基本就是:
解压 → docker compose up -d → 完成恢复。