由于冲突,无法删除某些未标记的泊坞窗图像

时间:2015-11-25 16:34:32

标签: docker dockerfile docker-registry

我无法明确删除一些未标记的泊坞窗图像。具体而言,那些标签为<none>

如果我运行docker images -a,我会得到类似的结果:

<none>              <none>              91e54dfb1179        3 months ago        188.3 MB
<none>              <none>              d74508fb6632        3 months ago        188.3 MB
<none>              <none>              c22013c84729        3 months ago        188.3 MB
<none>              <none>              d3a1f33e8a5a        3 months ago        188.1 MB
<none>              <none>              4a5e6db8c069        3 months ago        125.1 MB
<none>              <none>              2c49f83e0b13        3 months ago 

然而,当我输入docker rmi -f 2c49f83e0b13时,我得到:

Error response from daemon: Conflict, 2c49f83e0b13wasn't deleted
Error: failed to remove images: [2c49f83e0b13]

知道可能是什么问题吗?

对于我实际使用的一些图像,这些可能是中间码头图像。但如果是这种情况,那么完成的泊坞窗图像应该已经具有那些先前的图像,并且我没有明确地需要那些中间图像。

3 个答案:

答案 0 :(得分:3)

确保图像实际上是悬空(意味着它没有被任何其他图像引用,或者不是图像的父级)

docker images --filter "dangling=true" -q --no-trunc

如果是悬空(并且应该被删除),那么有一些未决的错误报告无法删除此类图片:issue 13625issue 12487

答案 1 :(得分:0)

在删除图像之前,应先停止容器:

docker rm $(docker ps -a -q)

来源:https://github.com/docker/docker/pull/6112

答案 2 :(得分:0)

它也发生在我身上,并重新启动docker引擎和使用此图像的所有容器解决了这个问题。