【问题标题】:Cannot stop or kill Docker image无法停止或终止 Docker 映像
【发布时间】:2015-01-14 17:10:34
【问题描述】:

我在我的 Windows 7 上运行 boot2docker。 在 VM 映像中,我试图停止所有 Docker 映像,但是出现错误:

docker@boot2docker:~$ docker images
REPOSITORY           TAG                 IMAGE ID            CREATED             VIRTUAL SIZE
svendowideit/samba   latest              ce8e4e03282a        8 days ago          252 MB
hello-world          latest              e45a5af57b00        13 days ago         910 B
busybox              latest              4986bf8c1536        13 days ago         2.433 MB
docker@boot2docker:~$ docker stop e45a5af57b00
Error response from daemon: No such container: e45a5af57b00
FATA[0000] Error: failed to stop one or more containers
docker@boot2docker:~$ docker kill e45a5af57b00
Error response from daemon: No such container: e45a5af57b00
FATA[0000] Error: failed to kill one or more containers

【问题讨论】:

    标签: docker boot2docker


    【解决方案1】:

    停止所有 docker 容器:

    $ docker stop $(docker ps -a -q)

    然后移除所有 docker 容器:

    $ docker rm $(docker ps -a -q)

    删除所有 docker 镜像:

    $ docker rmi $(docker images -q)

    【讨论】:

      【解决方案2】:

      您正在查看图像并试图停止容器。它们是不相同的。 docker ps 会给你正在运行的容器, docker ps -a 会给你所有的容器。

      图像只是 docker run 命令使用的文件系统的图像。 docker run 创建可以停止或删除的容器(docker rm),但您很少需要删除图像(docker rmi)。

      $ docker images
      REPOSITORY                        TAG                 IMAGE ID            CREATED             VIRTUAL SIZE
      ubuntu                            latest              5506de2b643b        11 weeks ago        199.3 MB
      
      $ docker run ubuntu
      $ docker run ubuntu
      $ docker ps -a
      CONTAINER ID        IMAGE                               COMMAND                CREATED             STATUS                      PORTS               NAMES
      037b45371358        ubuntu:latest                       "bash"                 2 seconds ago       Exited (0) 2 seconds ago                        goofy_yalow         
      7a1f93ed42b3        ubuntu:latest                       "bash"                 4 seconds ago       Exited (0) 3 seconds ago                        admiring_yalow  
      

      正如您所见,id 不同 - 这些容器已经退出 - 所以它们无法停止,它们可以被检查、删除、重新启动。如果您在处理完成后不需要容器 - 您可以使用 --rm 选项:

      docker run --rm ubuntu
      

      容器停止时会自动移除。

      【讨论】:

        【解决方案3】:

        正如 Jonathan 所述,如何停止所有 docker 容器,但是您需要使用 Git Bash 或 Windows 子系统 for Linux (WSL) 才能使其正常工作。

        要安装 WSL,请参阅此链接。 https://docs.microsoft.com/en-us/windows/wsl/install-win10

        仅使用普通的 windows 命令行是行不通的。

        【讨论】:

        • 2015 年 1 月,WSL 不存在运行 docker,所以我认为这不适用于 OP 的问题。
        猜你喜欢
        • 2023-03-18
        • 1970-01-01
        • 2012-03-12
        • 1970-01-01
        • 2019-04-30
        • 2015-11-11
        • 2017-12-20
        • 2015-09-30
        • 2022-08-03
        相关资源
        最近更新 更多