如何删除所有docker容器?

问题描述 投票:1回答:4

我使用以下命令删除所有docker容器:

docker ps -q | xargs docker stop
docker ps -aq --no-trunc -f status=exited | xargs docker rm

但无论如何我看到容器后:

$ docker ps -a
CONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS              PORTS               NAMES
70cb7107d00d        24820714bfc6        "wait-for-it.sh mysqâ¦"   21 minutes ago      Created                                 sql_migration

然后我执行了命令

 docker rm sql_migration

它取出了容器。

你能帮忙纠正初始命令并解释它为什么不起作用。

如果您解释如何将容器更改为sql_migration等状态,我将不胜感激

docker docker-container
4个回答
2
投票

1. Remove what can be removed...

要删除所有exitedcreated容器,而不是Up(正在运行)容器:

docker container prune -f

-f--force阻止您被提示回答以下问题:

WARNING! This will remove all stopped containers.
Are you sure you want to continue? [y/N]

示例:(注意最后没有删除一个容器)

$ docker ps -a
CONTAINER ID        IMAGE               COMMAND             CREATED             STATUS                      PORTS               NAMES
053ce57276b7        alpine              "/bin/sh"           3 seconds ago       Created                                         eager_meninsky
55f20431a536        alpine              "/bin/sh"           15 seconds ago      Up 14 seconds                                   hardcore_clarke
44cbe2dc81b0        alpine              "/bin/sh"           38 seconds ago      Exited (0) 37 seconds ago                       test
647747afb9a4        alpine              "/bin/sh"           18 hours ago        Exited (137) 18 hours ago                       admiring_visvesvaraya


$ docker container prune -f
Deleted Containers:
053ce57276b7d7008272e95991cf950268b9b32676b1389ec6e8ab6e6b755dc9
44cbe2dc81b0522e0fd0e53f28a4d3871b818b9b17681dd011c8680ab37b51e7
647747afb9a431a2c5040e6aba5119b199b94061c444ff0194aaa809dbf849b8

Total reclaimed space: 0B


$ docker ps -a
CONTAINER ID        IMAGE               COMMAND             CREATED             STATUS              PORTS               NAMES
55f20431a536        alpine              "/bin/sh"           45 seconds ago      Up 44 seconds                           hardcore_clarke

2. Stop all & remove...

docker container stop $(docker container ls -aq)
docker container prune -f

例:

$ docker ps -a
CONTAINER ID        IMAGE               COMMAND             CREATED             STATUS                      PORTS               NAMES
da7ffd8efb62        alpine              "/bin/sh"           5 seconds ago       Created                                         quirky_poitras
31cb71a8899c        alpine              "/bin/sh"           20 seconds ago      Exited (0) 13 seconds ago                       elastic_shaw
becfdc81228c        alpine              "/bin/sh"           25 seconds ago      Up 24 seconds                                   thirsty_murdock


$ docker container stop $(docker container ls -aq)
da7ffd8efb62
31cb71a8899c
becfdc81228c


$ docker container prune -f
Deleted Containers:
da7ffd8efb623677882b1534008e66a1530baa94e0473be537ef5c415c928ba3
31cb71a8899c47472d0ccb5710e34ff08b4ef142599d4e857e3e69740a2e59b5
becfdc81228cdf41519102ea780956eed71a86103e849dff3d9f7cca0a54651f

Total reclaimed space: 5B


$ docker ps -a
CONTAINER ID        IMAGE               COMMAND             CREATED             STATUS              PORTS               NAMES

1
投票

我使用以下命令删除所有docker容器:

docker rm $(docker ps -aq)


0
投票

我使用以下命令删除所有容器:

docker stop $(docker ps -aq)
docker rm $(docker ps -aq)

0
投票

一个衬里停止/删除所有Docker容器:

docker stop $(docker ps -a -q)

docker rm $(docker ps -a -q)

© www.soinside.com 2019 - 2024. All rights reserved.