方法一:
#显示所有的容器,过滤出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命令,快速删除已退出的容器