在 Docker 中删除 image 时有时会遇到类似
Error response from daemon: conflict: unable to delete 6ec9a5a0fc9f (cannot be forced) - image has dependent child images
这样的错误,原因是有另外的 image FROM 了这个 image,可以使用下面的命令列出所有在指定 image 之后创建的 image 的父 image
docker image inspect --format='{ {.RepoTags}} { {.Id}} { {.Parent}}' $(docker image ls -q --filter since=xxxxxx)
其中 xxxxxx 是报错 image 的 id,在文章开头的例子中就是 6ec9a5a0fc9f。从列表中查找到之后就可以核对并删除这些 image。
1、查看我的镜像列表。
➜ ~ docker images -a
REPOSITORY TAG IMAGE ID CREATED SIZE
<none> <none> b707620d204c 8 hours ago 179MB
tingfeng/dockerfile_build_demo latest 6586e000b464 8 hours ago 179MB
<none>