CentOS下Docker如何备份与恢复

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

在CentOS系统下,使用Docker进行备份和恢复主要涉及到两个方面:备份Docker镜像、容器以及卷(volume)的数据。以下是详细的步骤:

备份Docker镜像

  1. 列出所有镜像

    docker images
    
  2. 导出镜像为tar文件 使用docker save命令将镜像导出为tar文件。

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

    例如:

    docker save -o my-image.tar my-image:latest
    
  3. 压缩备份文件(可选) 如果需要,可以使用gzip压缩导出的tar文件。

    gzip my-image.tar
    

恢复Docker镜像

  1. 解压缩备份文件(如果之前压缩过)

    gunzip my-image.tar.gz
    
  2. 导入镜像 使用docker load命令将tar文件导入为Docker镜像。

    docker load -i <input-file.tar>
    

    例如:

    docker load -i my-image.tar
    

备份Docker容器

  1. 列出所有容器

    docker ps -a
    
  2. 导出容器为tar文件 使用docker export命令将容器导出为tar文件。

    docker export -o <output-file.tar> <container-id-or-name>
    

    例如:

    docker export -o my-container.tar my-container
    

恢复Docker容器

  1. 导入容器 使用docker import命令将tar文件导入为新的Docker容器。

    docker import <input-file.tar> <new-image-name>:<tag>
    

    例如:

    docker import my-container.tar my-new-container:latest
    
  2. 启动恢复的容器

    docker start <new-container-id-or-name>
    

备份Docker卷

  1. 列出所有卷

    docker volume ls
    
  2. 备份卷数据 使用docker cp命令将卷数据复制到主机文件系统中。

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

    例如:

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

恢复Docker卷

  1. 恢复卷数据 使用docker cp命令将备份的数据复制回容器中的卷。
    docker cp <backup-path>/<volume-name>:/ <container-id-or-name>:/<volume-name>
    
    例如:
    docker cp /backup/my-volume my-container:/my-volume
    

注意事项

  • 在备份和恢复过程中,确保Docker服务正在运行。
  • 备份文件应存储在安全的位置,以防止数据丢失。
  • 恢复卷数据时,确保目标容器已经存在并且卷名称匹配。

通过以上步骤,你可以在CentOS系统下有效地备份和恢复Docker镜像、容器以及卷的数据。

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

推荐阅读: 如何解决 CentOS 中 Node.js 日志过大问题