一、场景分析
我从 docker hub 上拉了这么一个镜像。
docker pull tomcat:8.5-jre8-alpine
我用 docker save 命令想把它导出成 tar 文件以便拷贝到内网机器上使用。
docker save -o tomcat-8.5-jre8-alpine.tar.gz 镜像ID
当我把这个镜像传到别的机器,并用 docker load 命令导入的时候,发现 tag 为 <none>
- 传到 k8snode2
- docker load 导入镜像
二、解决方法
不使用镜像ID,使用镜像 tag 进行 save,把 镜像 tag 信息明确地告诉 save 命令,让他打包进 tar 文件。
docker save -o tomcat-8.5-jre8-alpine.tar.gz 镜像TAG
或者
docker save 镜像TAG -o tomcat-8.5-jre8-alpine.tar.gz
都可以
- 在 k8s31node1 上 save 带上 tag
- 在 k8s31node2 上 load 时自然有 tag
三、总结
使用
- docker save -o 镜像文件 镜像ID
容易丢失 tag 信息。
推荐使用
- docker save -o 镜像文件 镜像TAG
的方式来导入导出镜像。