Heim  >  Artikel  >  Betrieb und Instandhaltung  >  Was soll ich tun, wenn Docker das Bild nicht löschen kann?

Was soll ich tun, wenn Docker das Bild nicht löschen kann?

藏色散人
藏色散人Original
2022-01-20 15:25:325526Durchsuche

docker不能删除镜像的解决办法:1、删除REPOSITORY;2、删除IMAGE ID;3、通过“docker images”查看镜像即可。

Was soll ich tun, wenn Docker das Bild nicht löschen kann?

本文操作环境:centOS6.8系统、Docker 18.09.x版、Dell G3电脑。

docker不能删除镜像怎么办?

解决Docker Image镜像无法删除问题的方法

前言

Docker是Docker.Inc公司开源的一个基于轻量级虚拟化技术的容器引擎项目,整个项目基于Go语言开发,并遵从Apache 2.0协议。通过分层镜像标准化和内核虚拟化技术,Docker使得应用开发者和运维工程师可以以统一的方式跨平台发布应用,并且以几乎没有额外开销的情况下提供资源隔离的应用运行环境。由于众多新颖的特性以及项目本身的开放性,Docker在不到两年的时间里迅速获得诸多IT厂商的参与,其中更是包括Google、Microsoft、VMware等业界行业领导者。同时,Docker在开发者社区也是一石激起千层浪,许多如我之码农纷纷开始关注、学习和使用Docker,许多企业,尤其是互联网企业,也在不断加大对Docker的投入,大有掀起一场容器革命之势。

发现问题:

镜像是Docker最核心的技术之一,也是应用发布的标准格式。最近在工作中遇到一个问题,问题如下:

Error response from daemon: conflict: unable to delete 4ac2d12f10cd (must be forced) - image is referenced in multiple repositories

来自守护进程的错误响应:冲突:无法删除4ac2d12f10cd(必须强制) - 映像在多个存储库中被引用

1.删除镜像

查看镜像

root@souyunku:~/mydocker# docker images
REPOSITORY   TAG     IMAGE ID   CREATED    SIZE
nginx    v1     4ac2d12f10cd  41 minutes ago  108MB
souyunku/nginx  v1     4ac2d12f10cd  41 minutes ago  108MB
hello-world   latest    f2a91732366c  5 weeks ago   1.85kB

删除失败

删除其中一个镜像,这里的镜像有1个repo引用,并且没有容器使用

并且没有容器使用

root@souyunku:~/mydocker# docker container ls -a
CONTAINER ID  IMAGE    COMMAND    CREATED    STATUS       PORTS    NAMES
4c104074b3f4  hello-world   "/hello"   About an hour ago Exited (0) About an hour ago      priceless_hawking

镜像有1个repo引用

root@souyunku:~/mydocker# docker rmi 4ac
Error response from daemon: conflict: unable to delete 4ac2d12f10cd (must be forced) - image is referenced in multiple repositories

2.解决方法

删除REPOSITORY

被删除的ImageID,这里存在1个REPOSITORY名字引用,解决方法如下:

即删除时指定名称,而不是IMAGE ID。

root@souyunku:~/mydocker# docker rmi souyunku/nginx:v1
Untagged: souyunku/nginx:v1

再删除IMAGE ID就可以了:

root@souyunku:~/mydocker# docker rmi 4ac
Untagged: nginx:v1
Deleted: sha256:4ac2d12f10cdb99c099749432b7a450ee1c6958e0f2f964cd64c6b086ba3e622
Deleted: sha256:346164f732e08d72d1f64828acda4e5ca93f79473f443ce57d9cfe69d9b66b24
Deleted: sha256:3f8a4339aadda5897b744682f5f774dc69991a81af8d715d37a616bb4c99edf5
Deleted: sha256:bb528503f6f01b70cd8de94372e1e3196fad3b28da2f69b105e95934263b0487
Deleted: sha256:410204d28a96d436e31842a740ad0c827f845d22e06f3b1ff19c3b22706c3ed4
Deleted: sha256:2ec5c0a4cb57c0af7c16ceda0b0a87a54f01f027ed33836a5669ca266cafe97a

3.查看镜像

 root@souyunku:~/mydocker# docker images
REPOSITORY   TAG     IMAGE ID   CREATED    SIZE
hello-world   latest    f2a91732366c  5 weeks ago   1.85kB

推荐学习:《docker视频教程

Das obige ist der detaillierte Inhalt vonWas soll ich tun, wenn Docker das Bild nicht löschen kann?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn