docker ps 加 --filter 可精准按状态筛选容器,如 -f status=running 查活跃实例,-a -f status=exited/dead 查已停止容器,支持叠加 name、label 等条件,并可用 -q 输出 ID 便于批量操作。

直接用 docker ps 加 --filter(或 -f)就能按状态精准筛选,不用额外管道或脚本。
筛选 running 状态的容器
最常用场景:只看真正活跃的服务实例。
docker ps -f status=running- 可叠加其他条件,比如同时匹配镜像名:
docker ps -f status=running -f ancestor=nginx
筛选 exited 或 dead 的“僵尸容器”
这类容器已停止但未清理,容易堆积、占用资源。
-
docker ps -a -f status=exited(-a必须加,否则看不到已退出的) docker ps -a -f status=dead- 一次查多个状态:
docker ps -a -f status=exited -f status=dead
结合名称或标签进一步缩小范围
避免误操作,尤其在多环境共存时。
- 按容器名模糊匹配:
docker ps -a -f name=api -f status=exited - 按自定义标签过滤(需启动时加
--label environment=prod):docker ps -f label=environment=prod -f status=running
快速获取 ID 并批量处理
配合 -q 输出纯 ID,适合后续删除或检查。
- 列出所有 exited 容器的 ID:
docker ps -aq -f status=exited - 一键清理(谨慎执行):
docker rm $(docker ps -aq -f status=exited) - 查看这些容器的启动命令:
docker ps -a -f status=exited --no-trunc


















