详解docker强制批量删除none的image镜像

时间:2021-05-19

说正题,今天遇到的问题是自己在开发机做坏了几个image镜像,删不了 我想大家也遇到过这样类似的问题 ….

他的名字和tag都是为none,空… 以前看过一个帖子说,给他标记一个tag,就可以干掉,瞎扯…

[ruifengyun@bj-buzz-dev01 extractor_docker]$[ruifengyun@bj-buzz-dev01 extractor_docker]$ docker imagesREPOSITORY TAG IMAGE ID CREATED VIRTUAL SIZE<none> <none> 763e6d509697 2 minutes ago 1.123 GB<none> <none> 008ec8098c8d 21 minutes ago 471 MB

然后你去批量删除的时候会提示一个问题….

docker rmi $(docker images | awk '/^<none>/ { print $3 }')Error: image_delete: Conflict, 64b4fa0cdd27 wasn't deletedError: image_delete: Conflict, 5a2b9b2294c3 wasn't deleted(…略…)2014/03/08 18:26:04 Error: failed to remove one or more images

以前的解决的方法是,docker ps -a里面找到基于image的容器 然后stop它,rm他。 但是会发现还是不行….

[ruifengyun@bj-buzz-dev01 extractor_docker]$ docker ps -a |grep 008ec8098c8df6a628cbe5e7 008ec8098c8d "/bin/sh -c 'pip ins 14 minutes ago Exited (1) 13 minutes ago romantic_wozniak81cf08a442dd 008ec8098c8d "/bin/sh -c 'pip ins 21 minutes ago Exited (1) 20 minutes ago dreamy_bardeen

docker rmi id 的时候,还是会提示删除失败。 最后我选择把所有的docker ps -a里面Exited的都删除,然后再开始rmi….. 结果就可以了。。。。 想不通他们有啥关系,理论来说失败的images应该是它想他的容器是有关系的.. 反正是解决了,下面是写得批量删除的命令.

补充: 引起上面的原因是docker官方要求,docker rmi image_id 只能删除未被使用的image .

docker ps -a | grep "Exited" | awk '{print $1 }'|xargs docker stopdocker ps -a | grep "Exited" | awk '{print $1 }'|xargs docker rmdocker images|grep none|awk '{print $3 }'|xargs docker rmi

这样清空掉残余的容器后,再删除images就没有异常的提示了。

[ruifengyun@bj-buzz-dev01 ~]$ docker rmi -f 9503b09c1a70Deleted: 9503b09c1a707d29b084e18aa13ef5d66f43672e41dce4db5931cbf2a754daa1

题外话, 这两天还要研究下docker多个出口ip的方法……. 实体服务器的外网是很多,但是在docker环境下,还没搞过,这两天研究下。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。

声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。

相关文章