👌 2020-03-28 docker image 导入导出 保存 Tag 标记
两者区别 VS
- docker save 保存的是镜像(image),docker export 保存的是容器(container)
- 对于 Docker Save 方法,会保存该镜像的所有历史记录,包含 commit 历史
- 对于 Docker Export 方法,不会保留历史记录,即没有 commit 历史
- docker load 用来载入镜像包,docker import 用来载入容器包,但两者都会恢复为镜像
- docker load 不能对载入的镜像重命名,而 docker import 可以为镜像指定新名称
docker save - load
save
示例 docker save -o nginx.tar nginx:latest 或 docker save > nginx.tar nginx:latest
其中-o和>表示输出到文件,nginx.tar为目标文件,nginx:latest是源镜像名(name:tag)
load
示例 docker load -i nginx.tar 或 docker load < nginx.tar 其中-i和<表示从文件输入。会成功导入镜像及相关元数据,包括tag信息
docker export - import
export
示例 docker export -o nginx-test.tar nginx-test
导出为tar
docker export #ID or #Name > /home/export.tar
其中-o表示输出到文件,nginx-test.tar为目标文件,nginx-test是源容器名(name)
import
示例 docker import nginx-test.tar nginx:imp 或 cat nginx-test.tar | docker import - nginx:imp
docker 命令混用情况
save -> import
export -> load
注意事项
「docker save 镜像 ID」保存的镜像会丢失 Tag 信息,可以使用「docker save XXX:Tag」方式保存镜像