温馨提示×

CentOS下Docker容器的备份与恢复

小樊
53
2025-08-06 10:21:28
栏目: 智能运维

CentOS下Docker容器备份与恢复指南

一、容器备份

  1. 导出容器文件系统(仅数据)

    docker export <容器ID或名称> > <备份文件>.tar # 示例:docker export nginx-container > nginx-backup.tar  
  2. 保存容器为镜像(含配置)

    docker commit <容器ID或名称> <新镜像名>:<标签> docker save -o <镜像备份文件>.tar <新镜像名>:<标签> # 示例:docker commit nginx-container nginx-backup:latest  # docker save -o nginx-backup.tar nginx-backup:latest  

二、容器恢复

  1. 从镜像恢复

    docker load -i <镜像备份文件>.tar docker run -d --name <新容器名> <新镜像名>:<标签> # 示例:docker load -i nginx-backup.tar  # docker run -d --name nginx-restored nginx-backup:latest  
  2. 从导出文件恢复

    cat <备份文件>.tar | docker import - <新镜像名>:<标签> docker run -d --name <新容器名> <新镜像名>:<标签> # 示例:cat nginx-backup.tar | docker import - nginx-restored:latest  

三、数据卷备份(可选)

若容器使用了数据卷,需额外备份卷数据:

# 备份卷数据到主机  docker run --rm -v <卷名>:/backup -v $(pwd):/host busybox tar czvf /host/<卷备份文件>.tar.gz /backup # 恢复卷数据  docker run --rm -v <卷名>:/backup -v $(pwd):/host busybox tar xzvf /host/<卷备份文件>.tar.gz -C /backup 

注意事项

  • 备份前确保容器已停止(避免数据不一致)。
  • 备份文件需存储在安全路径,建议定期清理旧备份。
  • 恢复时需确认镜像或卷名称唯一,避免冲突。

以上方法覆盖了CentOS下Docker容器的基础备份与恢复需求,可根据实际场景选择合适方案。

0