先盘点有哪些项目
docker compose ls 列出本机上已有的 compose 项目及其状态与所用编排文件,默认只列运行中的,加 -a 连已停止的一起列出。接手一台不熟悉的机器、准备清理资源或排查端口占用时,先用它把项目清单和配置文件路径拿到手,再决定动哪一个,比对着 docker ps 的容器列表猜归属可靠得多。
基本信息
| 语法 | docker compose ls [-a] [--format json] |
|---|---|
| 输出内容 | 项目名、状态、配置文件路径 |
| 状态格式 | running(容器数) / exited(容器数) |
| 项目名来源 | 默认取目录名,可用 -p 指定 |
典型使用场景
- 接手环境盘点:先看有哪些项目、各自用什么编排文件
- 清理前确认范围:决定停哪个项目、动哪些资源
- 端口冲突排查:按项目名定位到具体目录再看端口定义
- 找配置文件:项目名不直观时用 JSON 输出里的路径字段定位
- 确认哪些项目已停止:加 -a 才能看到已退出但仍占资源记录的项目
盘点与定位
盘点与定位
# 只看运行中的项目
docker compose ls
# 连已停止的项目一起列出
docker compose ls -a
# 输出 JSON 便于脚本处理与查路径
docker compose ls -a --format json
# 按名称或状态过滤
docker compose ls --filter status=running
# 确认某项目用的是哪个编排文件
docker compose ls -a --format json | grep -A2 ConfigFiles输出逐列读法
| 列 | 含义 | 正常/异常 |
|---|---|---|
| NAME | 项目名 | 默认是目录名,同名目录会造成混淆 |
| STATUS | 运行状态与容器数 | 数量与预期不符说明有容器未启动 |
| CONFIG FILES | 该项目使用的编排文件路径 | 据此定位项目真实目录与配置来源 |
项目名默认取目录名,两个不同目录下同名项目会显示成同一名字,靠 -p 指定项目名或改目录名来区分。
该命令只反映当前引擎里存在的项目记录,外部资源与手工创建的容器不在其中,盘点还要配合 docker ps 与 network ls 一起看。