温馨提示×

CentOS怎么备份Docker

小樊
42
2026-08-03 06:39:24
栏目: 智能运维

在 CentOS 上备份 Docker,通常分为 备份镜像、容器、数据卷、以及 Docker 配置。下面按常见场景给你一套完整、实用的做法。


一、备份 Docker 镜像

1️⃣ 查看现有镜像

docker images

2️⃣ 导出单个镜像

docker save -o myimage.tar myimage:latest

3️⃣ 导出多个镜像

docker save -o all_images.tar image1:tag image2:tag

✅ 恢复镜像:

docker load -i myimage.tar

二、备份 Docker 容器

⚠️ 容器本身不建议直接备份,更推荐 备份镜像 + 数据卷

1️⃣ 导出容器(不推荐长期使用)

docker export 容器ID > container.tar

恢复:

docker import container.tar myimage:new

三、备份 Docker 数据卷(最重要)

方法一:使用容器临时挂载备份(推荐)

1️⃣ 查看数据卷

docker volume ls

2️⃣ 备份数据卷

docker run --rm \
  -v 数据卷名:/data \
  -v $(pwd):/backup \
  centos \
  tar czf /backup/volume_backup.tar.gz -C /data .

3️⃣ 恢复数据卷

docker run --rm \
  -v 数据卷名:/data \
  -v $(pwd):/backup \
  centos \
  tar xzf /backup/volume_backup.tar.gz -C /data

四、备份 Docker 配置

1️⃣ Docker 主配置目录

/etc/docker/

备份:

tar czf docker_config.tar.gz /etc/docker

2️⃣ systemd 配置(如有)

/etc/systemd/system/docker.service.d/

五、备份 Docker 存储目录(整机备份)

⚠️ 停止 Docker 服务后再操作

1️⃣ 停止 Docker

systemctl stop docker

2️⃣ 默认存储路径

/var/lib/docker

3️⃣ 备份

tar czf docker_lib.tar.gz /var/lib/docker

4️⃣ 恢复

systemctl stop docker
rm -rf /var/lib/docker
tar xzf docker_lib.tar.gz -C /
systemctl start docker

六、生产环境推荐方案 ✅

内容 推荐方式
镜像 docker save
容器 重新构建
数据 数据卷备份
配置 /etc/docker
数据库 专用工具(mysqldump 等)

七、自动化备份示例(cron)

0 2 * * * docker run --rm -v mydata:/data -v /backup:/backup centos tar czf /backup/mydata_$(date +\%F).tar.gz -C /data .

八、常见错误

❌ 不停止 Docker 直接拷贝 /var/lib/docker
❌ 只备份镜像却忽略数据卷
❌ 容器里存重要数据(应放数据卷)


如果你愿意,可以告诉我:

  • ✅ 是 单机还是生产环境
  • ✅ 是否使用 docker-compose
  • ✅ 备份到 本地 / 远程 / 云

我可以帮你定制一套 CentOS + Docker 专用备份方案

0