Docker 系列(二十一):批量删除已停止的容器

在日常使用 Docker 的过程中,随着容器的反复创建与退出,主机上会积累大量已经停止的容器,逐个执行 docker rm 删除十分繁琐。下面介绍两种批量删除 Docker 中已经停止的容器的方法:

# 删除所有未运行的容器(已经运行的删除不了,未运行的就一起被删除了)
docker rm $(docker ps -a -q)

# 根据容器的状态,删除 Exited 状态的容器
docker rm $(docker ps -aq -f status=exited)

第一条命令先用 docker ps -a -q 列出所有容器(包括正在运行的)的 ID,再交给 docker rm 逐个删除。由于 Docker 不允许删除正在运行的容器,运行中的容器会因报错而被跳过,最终只有未运行的容器被删除。

第二条命令通过 -f status=exited 只筛选出状态为 Exited 的容器,删除范围更加精确。

提示:新版 Docker 还提供了 docker container prune 命令,可以一次性删除所有已停止的容器,效果与上面第二种方式类似。

系列导航


   转载规则


《Docker 系列(二十一):批量删除已停止的容器》 由 吴杭沉 采用 知识共享署名 4.0 国际许可协议 进行许可。
 上一篇
Docker 系列(二十二):搭建私有仓库 Docker 系列(二十二):搭建私有仓库
有时候使用 Docker Hub 这样的公共仓库可能不方便,用户可以创建一个本地仓库供私人使用。这里介绍如何使用官方的 registry 镜像搭建一个简单的私有仓库。 启动私有仓库可以通过获取官方 registry 镜像来运行: $ doc
2023-01-10
下一篇 
Docker 系列(二十):docker ps 显示指定的列 Docker 系列(二十):docker ps 显示指定的列
docker ps 默认会输出一整套列,如果只想查看自己关心的字段,可以通过 --format 参数自定义显示模板。 自定义显示模板可以自己指定显示的模板,例如: $ docker ps --format "table {{.ID}}\t{
2022-12-27
  目录