centos

centos上docker如何备份数据

小樊
47
2025-07-10 13:01:59
栏目: 智能运维

在CentOS上备份Docker数据,可以通过以下步骤进行:

方法一:使用docker commit创建镜像备份

  1. 停止并备份容器

    • 停止需要备份的容器:
      docker stop <container_id_or_name>
      
    • 使用docker commit命令创建一个新的镜像,该镜像包含了容器的所有数据和配置:
      docker commit <container_id_or_name> <backup_image_name>
      
  2. 导出镜像

    • 将新创建的镜像导出为一个tar文件:
      docker save <backup_image_name> > <backup_image.tar>
      
  3. 保存备份文件

    • 将导出的tar文件保存到安全的位置,例如外部存储设备或云存储服务。

方法二:使用docker export导出容器数据

  1. 导出容器数据

    • 使用docker export命令将容器的文件系统导出为一个tar文件:
      docker export <container_id_or_name> > <container_data.tar>
      
  2. 保存备份文件

    • 将导出的tar文件保存到安全的位置。

方法三:使用docker cp复制数据

  1. 复制容器数据

    • 使用docker cp命令将容器内的数据目录复制到主机上:
      docker cp <container_id_or_name>:<container_data_path> <host_backup_path>
      
  2. 保存备份文件

    • 将复制的数据目录打包并保存到安全的位置。

方法四:使用docker backup(Docker 18.09及以上版本)

  1. 安装docker-backup插件

    • 安装docker-backup插件(如果尚未安装):
      yum install -y docker-backup
      
  2. 创建备份

    • 使用docker backup命令创建备份:
      docker backup create <backup_name> <container_id_or_name>
      
  3. 保存备份文件

    • 备份文件将保存在默认的备份目录中,通常是/var/lib/docker/backup

恢复数据

方法一:使用docker load恢复镜像

  1. 加载镜像

    • 使用docker load命令加载备份的镜像:
      cat <backup_image.tar> | docker load
      
  2. 启动容器

    • 使用加载的镜像启动一个新的容器:
      docker run -d --name <new_container_name> <backup_image_name>
      

方法二:使用docker import恢复容器数据

  1. 导入容器数据

    • 使用docker import命令导入备份的容器数据:
      cat <container_data.tar> | docker import - <new_image_name>
      
  2. 启动容器

    • 使用导入的镜像启动一个新的容器:
      docker run -d --name <new_container_name> <new_image_name>
      

方法三:使用docker cp恢复数据

  1. 复制数据

    • 使用docker cp命令将备份的数据目录复制回容器内:
      docker cp <host_backup_path> <container_id_or_name>:<container_data_path>
      
  2. 启动容器

    • 启动容器并验证数据是否恢复成功。

通过以上方法,您可以在CentOS上有效地备份和恢复Docker数据。选择适合您需求的方法进行操作即可。

0
看了该问题的人还看了