Docker unable to delete image is being used by running container
更多: zhilu jiaocheng

解决方案

  1. 你有几个 Docker 镜像从 docker hub 拉到你的 Docker 节点上。
    并且我们想从 docker 节点中删除 centos 镜像。
# docker images
REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE
fedora              latest              422dc563ca32        3 days ago          252MB
ubuntu              latest              dd6f76d9cc90        13 days ago         122MB
hello-world         latest              725dcfab7d63        2 weeks ago         1.84kB
centos              latest              d123f4e55e12        2 weeks ago         197MB
  1. 要查找哪个容器正在使用 centos 镜像,请使用以下命令。
# docker ps -a 
CONTAINER ID        IMAGE               COMMAND             CREATED             STATUS                    PORTS               NAMES
0f1262bd1285        centos              "/bin/bash"         5 minutes ago       Up 5 minutes                                  dreamy_gates

正如我们在上面的输出中看到的,Docker 容器“dreamy_gates”正在使用我们的 centos 镜像。

  1. 首先我们需要停止容器“dreamy_gates”。
    为此,请使用以下命令:
# docker stop 0f1262bd1285
0f1262bd1285
  1. 现在我们可以删除 Docker 容器了。
# docker rm 0f1262bd1285
0f1262bd1285
  1. 最后,我们可以删除centos的docker镜像。
# docker rmi d123f4e55e12
Untagged: centos:latest
Untagged: centos@sha256:4565fe2dd7f4770e825d4bd9c761a81b26e49cc9e3c9631c58cfc3188be9505a
Deleted: sha256:d123f4e55e1200156d9cbcf4421ff6d818576e4f1e29320a408c72f022cfd0b1
Deleted: sha256:cf516324493c00941ac20020801553e87ed24c564fb3f269409ad138945948d4
  1. 使用命令“docker images”验证镜像是否被删除。
# docker images

问题

当我们尝试删除 Docker 镜像时,我们会收到如下所示的错误。

# docker rmi d123f4e55e12
Error response from daemon: conflict: unable to delete d123f4e55e12 (cannot be forced) - image is being used by running container 0f1262bd1285

Docker 来自守护进程的错误响应:冲突:无法删除 d123f4e55e12(不能强制) - 镜像正在被运行中的容器0f1262bd1285使用。

要发生此错误,系统上必须有依赖于该镜像的容器。
错误报告哪个容器正在使用该图像,在删除图像之前先删除容器。

日期:2020-09-17 00:16:24 来源:oir作者:oir