我正在尝试删除图像,我得到:
# 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
Run Code Online (Sandbox Code Playgroud)
这是docker版本:
# 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
Run Code Online (Sandbox Code Playgroud)
但没有额外的信息:
# docker images --format="raw" | grep f50f9524513f …Run Code Online (Sandbox Code Playgroud) 我无法删除 docker 镜像。出现以下错误。
docker image rm -f $(docker image ls -aq)
Error response from daemon: conflict: unable to delete 6ab53ec1a8c9 (cannot be forced) - image is being used by running container d65f1c6b7982
Error response from daemon: conflict: unable to delete 2602b4852593 (cannot be forced) - image has dependent child images
Run Code Online (Sandbox Code Playgroud)
码头工人版本:
docker --version
Docker version 17.05.0-ce, build 89658be
Run Code Online (Sandbox Code Playgroud) 我在我的系统中安装了一个带有大约 1 GB 操作系统的 docker 映像,然后我更新并安装了其他软件,将大小推到了近 2 GB。我使用这个容器创建了一个新的子图像docker commit <cont-id> <child-name>。现在我有两个 docker 镜像,父镜像和子镜像总大小为 3 GB。由于我有一个多余的 1 GB 父映像,因此我想将其删除。
Parent image 1 GB
Child image 2 GB
Run Code Online (Sandbox Code Playgroud)
我试图保留子图像并尝试删除父图像,docker rmi -f <image-id>但它给出了这个错误
来自守护进程的错误响应:冲突:无法删除 5dvd3054h756(不能强制)-图像具有依赖的子图像
然后尝试了这个解决方案,我尝试过sudo docker images --filter "dangling=true" -q --no-trunc但什么也没返回,也尝试过docker system prune显示 0 GB。
我还计划将其他程序安装到 docker 内的操作系统中,因此希望从现有的子映像中生成新的子映像。我到处搜索,没有很好的解决方案来删除 docker 中的父图像,以及我阅读的原因是因为子图像使用了一些父层。生成新的子映像后,是否无法删除 docker 中的父映像?
我在 docker 中创建了一个镜像。在其中安装了 Ubuntu、JDK 和其他几个库。然后我退出容器并做了这样的提交
docker commit a7b95082f6ea anil-ubuntu
Run Code Online (Sandbox Code Playgroud)
我再次启动容器
docker run -p 5901:5901 -t -i anil-ubuntu
Run Code Online (Sandbox Code Playgroud)
这次我安装了 gradle 和其他几个库。然后退出容器并再次提交。
docker commit a7b95082f6ea anil-ubuntu
Run Code Online (Sandbox Code Playgroud)
每次我进行提交时,都会创建一个新图像,并保留带有存储库和标签的旧图像。按照这个工作流程,很快我就会用完空间。这是使用 docker 的正确方法吗?我如何确保所有这些图像都消失。
我在 Windows 10 上使用 docker 版本 18.09.1 桌面
当我做类似的事情时,podman rmi d61259d8f7a7 -f它会失败并显示一条消息:Error: unable to delete "vvvvvvvvvvvv" (cannot be forced) - image has dependent child images。
我已经尝试过删除一些图像的all 开关 podman rmi --all,但仍有许多图像被抛在后面。如何在一个步骤中强制删除所有图像和相关子图像?