温馨提示×

docker如何备份ubuntu

小樊
49
2026-08-12 06:35:01
栏目: 智能运维

在 Docker 中“备份 Ubuntu”通常有以下几种常见场景,我按从简单到完整给你说明,你可以按需选择。


一、备份 Ubuntu 容器(最常见)

✅ 方法 1:使用 docker commit(快速但不推荐长期使用)

适合临时备份容器状态。

docker commit 容器名或ID ubuntu_backup:2026

✅ 优点:简单
❌ 缺点:镜像臃肿、不可追溯、不适合生产


✅ 方法 2:导出容器为 tar(推荐)

适合完整备份一个 Ubuntu 容器。

docker export 容器名或ID > ubuntu_backup.tar

恢复:

docker import ubuntu_backup.tar ubuntu_restored

✅ 适合迁移、备份
❌ 不包含 volume、网络配置


二、备份 Ubuntu 镜像

docker save ubuntu:latest -o ubuntu_image.tar

恢复:

docker load -i ubuntu_image.tar

✅ 适合备份官方或自定义镜像


三、备份 Ubuntu 数据(最重要)

✅ 方法 3:备份容器内的数据(推荐 ✅)

1️⃣ 使用 docker cp

docker cp 容器名:/data ./ubuntu_data_backup

2️⃣ 使用 Volume(最佳实践)

如果 Ubuntu 容器使用了 volume:

docker volume ls
docker volume inspect 卷名

直接备份 volume 数据目录(通常在):

/var/lib/docker/volumes/卷名/_data

✅ 最安全、最推荐


四、完整备份(容器 + 数据 + 配置)

✅ 方法 4:docker-compose 项目备份(生产推荐)

# 备份代码、配置
tar czf project_backup.tar.gz .

# 备份 volume
tar czf volume_backup.tar.gz /var/lib/docker/volumes/xxx

恢复时:

docker-compose up -d
docker cp volume_backup.tar.gz 容器名:/data

五、备份宿主机 Ubuntu(不是 Docker)

⚠️ 如果你指的是宿主机的 Ubuntu 系统,Docker 不负责系统备份,应使用:

rsync
tar
timeshift
dd

✅ 推荐方案总结

场景 推荐方式
临时保存容器状态 docker commit
容器迁移 docker export / import
镜像保存 docker save / load
数据备份 volume + docker cp
生产环境 volume + docker-compose

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

  • ✅ 是容器里的 Ubuntu还是宿主机 Ubuntu
  • ✅ 是否跑着服务(如 MySQL / Nginx / Python)
  • ✅ 是否需要自动化备份

我可以给你一套完整可执行的备份方案

0