Docker在Debian上的备份与恢复怎么做

215
2025/4/6 3:32:01
栏目: 智能运维
开发者测试专用服务器限时活动,0元免费领,库存有限,领完即止! 点击查看>>

在Debian上备份和恢复Docker容器、镜像、卷和网络,可以按照以下步骤进行:

备份

1. 备份Docker镜像

使用docker save命令将镜像保存为tar文件。

docker save -o <output-file.tar> <image-name>:<tag>

例如:

docker save -o my-image.tar my-image:latest

2. 备份Docker容器

使用docker commit命令将运行中的容器保存为新的镜像,然后使用docker save命令保存该镜像。

docker commit <container-id> <backup-image-name>:<tag>
docker save -o <output-file.tar> <backup-image-name>:<tag>

例如:

docker commit my-container my-backup-image:latest
docker save -o my-container-backup.tar my-backup-image:latest

3. 备份Docker卷

使用docker volume ls列出所有卷,然后使用docker cp命令将卷数据复制到主机文件系统。

docker volume ls
docker cp <volume-name>:/ <host-path>

例如:

docker volume ls
docker cp my-volume:/my-volume /backup/my-volume

4. 备份Docker网络

Docker网络没有直接的备份方法,但可以通过备份网络配置文件来实现。通常,这些配置文件位于/etc/docker/network目录下。

tar -czvf docker-networks-backup.tar.gz /etc/docker/network

恢复

1. 恢复Docker镜像

使用docker load命令将tar文件加载为镜像。

docker load -i <input-file.tar>

例如:

docker load -i my-image.tar

2. 恢复Docker容器

首先,使用docker run命令从恢复的镜像启动一个新的容器。

docker run -d --name <new-container-name> <image-name>:<tag>

例如:

docker run -d --name my-restored-container my-backup-image:latest

3. 恢复Docker卷

使用docker cp命令将主机文件系统中的数据复制回卷。

docker cp <host-path> <volume-name>:/<volume-path>

例如:

docker cp /backup/my-volume my-volume:/my-volume

4. 恢复Docker网络

将备份的网络配置文件复制回/etc/docker/network目录,并重启Docker服务。

tar -xzvf docker-networks-backup.tar.gz -C /
systemctl restart docker

注意事项

  • 在进行备份和恢复操作时,确保Docker服务正在运行。
  • 备份文件应存储在安全的位置,以防止数据丢失。
  • 恢复操作可能会覆盖现有的数据和配置,请谨慎操作。

通过以上步骤,你可以在Debian上有效地备份和恢复Docker容器、镜像、卷和网络。

辰迅云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>

推荐阅读: Debian Kafka数据存储如何优化