这个问题与我是否应该关注过量的、未运行的Docker容器有关。

我想知道如何移除旧容器。docker rm 3e552code34a允许你删除一个,但我已经有很多了。Docker rm——help没有提供选择选项(像all一样,或者通过映像名称)。

也许有一个存放这些容器的目录,我可以很容易地手动删除它们?


当前回答

官方的说法是:

docker rm `docker ps -aq`

Docker的维护者已经表示不会有这样的命令——你可以像这样组合命令:

我们之前讨论过这个问题,希望用户使用上面的代码行,而不必向Docker添加额外的代码。

其他回答

如果你想移除所有容器,那么使用

码头集装箱修剪

该命令将删除所有容器

为什么不清理整个码头系统

Docker系统修剪

我正在使用以下命令删除退出和重新启动docker容器

docker stop --force $(docker ps -a|grep Exited| awk '{print $1}')
docker rm --force $(docker ps -a|grep Exited| awk '{print $1}')
docker stop --force $(docker ps -a|grep Restarting| awk '{print $1}')
docker rm --force $(docker ps -a|grep Restarting| awk '{print $1}')

使用以下命令删除命名为none的图像

docker image rm --force $(docker image ls  |grep none |awk '{print $3}')

更新2021年(最新)

docker container prune

这是2017年(旧)的方式

移除所有停止的容器

docker rm $(docker ps -a -q)

移除所有容器(已停止和未停止)

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

列出所有容器(只有id)

docker ps -aq

停止所有正在运行的容器

docker stop $(docker ps -aq)

移除所有容器

docker rm $(docker ps -aq)

删除所有图片

docker rmi $(docker images -q)

Use:

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

它强制停止并删除本地存在的所有容器。