删除容器报错:Error response from daemon: conflict: unable to delete

Posted Data-Mining

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了删除容器报错:Error response from daemon: conflict: unable to delete相关的知识,希望对你有一定的参考价值。

前言

问题

解决

结尾

前言

云原生日益普及的现在,docker容器化成为现有很多服务的改进方向,docker凭借更高效的利用系统资源、更快速的启动时间、一致的运行环境、持续支付和部署、更轻松的迁移、更轻松的维护和拓展等优势,迅速走红。但是,很多容器部署后在回收时,都会遇到各种各样的问题,比如今天讨论的删除镜像的问题,有时候删除操作会莫名其妙的报错。

问题

今天遇到了一个问题,在我想要删除一个过期的镜像文件的时候,莫名其妙的报了一个错误。

下图是我在服务器上的镜像列表,其中有很多需要删除的过期镜像。理论上来说,清理过期镜像应该属于常规操作,但是没想到,问题还不少。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-PU88ohoo-1628432878837)(<> “点击并拖拽以移动”)]

一般操作都是直接使用命令 docker rmi 镜像ID 来删除对应的镜像,但是我遇到了如下报错:

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-6nnwJcQR-1628432878840)(<> “点击并拖拽以移动”)]

详细的报错信息如下:

Error response from daemon: conflict: unable to delete f73fe6298efc (cannot be forced) - image has dependent child images

解决

后来,通过查阅资料,发现删除镜像其实有很大的玄机。一般来说,使用如下方法和递进关系尝试删除镜像:

方法一、删除命令如下:

docker rmi 镜像ID

方法二、如果方法一不行,可以考虑使用方法二,命令如下:

docker rmi -f 镜像ID

方法三、如果方法二也不行,就可以考虑使用方式三,命令如下:

docker rmi 镜像仓库名:tag

平时,我们工作中遇到的所有镜像删除失败的问题,会这三板斧基本上就够用了。

下图是我删除对应的镜像成功的截图:

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-kAr0AhDT-1628432878842)(<> “点击并拖拽以移动”)]​

结尾

掌握 docker 的日常使用方法,对于服务端开发同学来说,是一项基本技能。大家好,我是 liuzhen007,中国邦德,中国一个会敲代码的邦德,欢迎大家关注我。

以上是关于删除容器报错:Error response from daemon: conflict: unable to delete的主要内容,如果未能解决你的问题,请参考以下文章

Docker删除报错:Error response from daemon: conflict: unable to delete 08b152afcfae (must be forced)(代码片段

Error response from daemon: You cannot remove a running container 错误解决

docker容器启动报错:Error response from daemon: error creating overlay mount to /var/lib/docker/overlay2/dd

Error response from daemon ... no space left on device docker启动容器服务报错

docker容器启动报错:Error response from daemon: error creating overlay mount to /var/lib/docker/overlay2/dd

docker删除镜像报错处理:Error response from daemon: conflict: unable to delete a945e7fd5401 (cannot be forced