备份
- 容器备份
- 导出容器文件系统:
docker export -o <容器名>.tar <容器ID或名称>。 - 保存容器为镜像:先
docker commit <容器ID> <新镜像名>,再docker save -o <镜像名>.tar <新镜像名>。
- 导出容器文件系统:
- 镜像备份
docker save -o <镜像名>.tar <镜像名>:<标签>,可批量备份所有镜像。
- 卷备份
- 备份数据卷内容到主机目录:
docker cp <容器ID>:<卷路径> <主机备份路径>。
- 备份数据卷内容到主机目录:
恢复
- 容器恢复
- 从镜像恢复:
docker load -i <镜像名>.tar,再docker run -d --name <新容器名> <镜像名>。 - 从文件系统恢复:
cat <容器备份>.tar | docker import - <新镜像名>,再启动容器。
- 从镜像恢复:
- 镜像恢复
docker load -i <镜像备份>.tar。
- 卷恢复
- 创建新卷并复制数据:
docker volume create <新卷名>,docker cp <主机备份路径> <容器ID>:<新卷路径>。
- 创建新卷并复制数据:
注意事项
- 备份前确保容器停止(部分操作需停止容器以避免数据不一致)。
- 备份文件存放在安全路径,建议定期清理过期备份。
- 恢复时检查Docker版本兼容性,必要时更新工具。
参考来源:[1,2,3,4,5,6,7,8,9,11]