如何批量删除Docker中已经停止的容器

方法一:

#显示所有的容器,过滤出Exited状态的容器,取出这些容器的ID,

sudo docker ps -a|grep Exited|awk '{print $1}'

#查询所有的容器,过滤出Exited状态的容器,列出容器ID,删除这些容器

sudo docker rm `docker ps -a|grep Exited|awk '{print $1}'`

方法二: 

#删除所有未运行的容器(已经运行的删除不了,未运行的就一起被删除了)

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


docker images | grep none | grep -v grep | awk '{print $3}' | xargs  docker rmi -f

删除已停止的docker容器

docker rm `docker ps -a | grep Exited | awk '{print $1}'`  

删除名称或标签为none的镜像

docker rmi -f  `docker images | grep '<none>' | awk '{print $3}'`  
或
docker images|grep none|awk '{print $3}'|xargs docker rmi

方法三:

#根据容器的状态,删除Exited状态的容器

sudo docker rm $(sudo docker ps -qf status=exited)

方法四:

#Docker 1.13版本以后,可以使用 docker containers prune 命令,删除孤立的容器。

sudo docker container prune

#删除所有镜像

sudo docker rmi $(docker images -q)

附图:

02-删除所有的容器,所有未运行的容器都被删除,正在运行的无法删除,达到删除不用容器的目的。

03-低于1.13版本的Docker,可以根据容器的状态来进行删除

04-查询所有的容器,过滤出状态为Exited的容器

05-Docker 1.13版本以后,开始支持prune命令,快速删除已退出的容器

原文地址:https://www.cnblogs.com/ningy1009/p/12531637.html