我正在尝试删除图像,我得到:
# docker rmi f50f9524513f
Failed to remove image (f50f9524513f): Error response from daemon: conflict: unable to delete f50f9524513f (cannot be forced) - image has dependent child images
这是码头工人版本:
# docker version
Client:
Version: 1.10.3
API version: 1.22
Go version: go1.5.3
Git commit: 20f81dd
Built: Thu Mar 10 21:49:11 2016
OS/Arch: linux/amd64
Server:
Version: 1.10.3
API version: 1.22
Go version: go1.5.3
Git commit: 20f81dd
Built: Thu Mar 10 21:49:11 2016
OS/Arch: linux/amd64
但没有额外的信息:
# docker images --format="raw" | grep f50f9524513f -C3
repository: debian
tag: 8
image_id: f50f9524513f
created_at: 2016-03-01 18:51:14 +0000 UTC
virtual_size: 125.1 MB
repository: debian
tag: jessie
image_id: f50f9524513f
created_at: 2016-03-01 18:51:14 +0000 UTC
virtual_size: 125.1 MB
如何获得它声称拥有的 依赖子图像?
没有具有该图像 ID 的正在运行或已停止的容器。
原文由 nicocesar 发布,翻译遵循 CC BY-SA 4.0 许可协议
简短的回答: 这是一个列出依赖 docker 图像的 python3 脚本。
长答案: 您可以使用以下内容查看在相关图像之后创建的所有图像的图像 ID 和父 ID:
您应该能够查找父 id 以 f50f9524513f 开头的图像,然后查找 这些 的子图像,等等。 但是
.Parent
不是您的想法。 ,因此在大多数情况下,您需要在上面指定docker images --all
以使其正常工作,然后您还将获得所有中间层的图像 ID。这是一个更有限的 python3 脚本来解析 docker 输出并进行搜索以生成图像列表:
如果您将其保存为
desc.py
您可以按如下方式调用它:或者只是使用 上面的要点,它做同样的事情。