我试图在我的电脑上停止和删除一些Docker容器,但这里发生了一些非常奇怪的事情。
我尝试停止:
docker stop $(docker ps -a -q)
这种方法一开始是有效的,因为 docker ps
没有显示任何正在运行的容器。但是几秒钟后,这些镜像会再次出现,并带有新的容器 ID。
我尝试停止(上一个命令)然后删除:
docker rm $(docker ps -a -q)
但是我收到了一个错误:
错误:没有这个容器:0f57644645eb
我在重新执行停止命令后,也尝试在正在运行的容器上运行此命令:
docker update --restart=no container-id
命令执行成功,但容器仍在重新启动。
我尝试在停止后删除所有镜像:
docker stop $(docker ps -a -q)
docker rmi $(docker images -q)
但是我收到了另一个错误:
Error response from daemon: conflict: unable to delete 0f57644645eb (cannot be forced) - image is being used by running container dcef9cdb703c
我在这里缺少什么?我想停止并删除这些容器,以便在重新安装后使Docker保持原样。
我正在使用Windows 10和Docker版本17.12.0-ce-win47(15139)。
docker service ls
进行测试。 - Henrydocker service rm container-id
命令,容器终于停止了。我不知道这个“service”的概念,因为我很久以前就启动了这些Docker容器,而且我也不记得我当时做了什么。请随意添加一个答案,我会将其标记为已解决。 - Dherikdocker-compose.yml
启动的,那么可以观察到相同的行为。如果您有这个文件,请使用docker-compose stop
。如果不是 compose 文件,则是 docker 服务。 - Peter Badida