docker load后找不到镜像是因为导出镜像save的时候用的是IMAGE ID,没有使用镜像名称,所以不会显示出来,其解决办法就是重新执行“docker save -o csctbb.com/hadoop:3.3.0 >…”即可。
本文操作环境:centos8系统、Docker 20.10.11、Dell G3电脑。
docker load 后找不到镜像怎么办?
docker load -i 导入后 看不到镜像
[root@centos8 ~]# docker images REPOSITORY TAG IMAGE ID CREATED SIZE csctbb.com/hadoop 3.3.0 084faab5baec 7 hours ago 1.68GB centos 8.1.1911 470671670cac 14 months ago 237MB kubeguide/hadoop latest e0af06208032 4 years ago 830MB
[root@centos8 ~]# docker save 084faab5baec > csctbb.com-hadoop.tar
问题:
docker load -i 导入后 ,没有提示成功,也没有报错,docker images 看不到导入的镜像?
如上,我的镜像是有名称和tag的
解释:
这是因为导出镜像save的时候用的是 IMAGE ID ,没有使用镜像名称,所以不会显示出来
使用如下方式:
docker save -o csctbb.com/hadoop:3.3.0 > csctbb.com-hadoop.tar
再导入就可以了
这里我用containerd 的 ctr测试的,原理一样,就是命令方式的差异
[root@ck8s2 ~]# ctr image import csctbb.com-hadoop.tar unpacking csctbb.com/hadoop:3.3.0 (sha256:6198b39f874b8c6c31a06f2dc9113292c02533527feef8cf88b4e2b17e48d658)...done [root@ck8s2 ~]# [root@ck8s2 ~]# ctr image import hadoop.tar unpacking csctbb.com/hadoop:3.3.0 (sha256:6198b39f874b8c6c31a06f2dc9113292c02533527feef8cf88b4e2b17e48d658)...done [root@ck8s2 ~]# ctr images list REF TYPE DIGEST SIZE PLATFORMS LABELS csctbb.com/hadoop:3.3.0 application/vnd.docker.distribution.manifest.v2+json sha256:6198b39f874b8c6c31a06f2dc9113292c02533527feef8cf88b4e2b17e48d658 1.6 GiB linux/amd64
推荐学习:《docker教程》