首页/云/Docker 容器速查/docker compose ls 列出项目
Compose 编排55 条

docker compose ls 列出项目

列出本机已有 Compose 项目及其状态与使用的文件:接手环境或清理资源前,先用它盘点有哪些项目在跑。

Docker 容器速查云更新于 2026-10-13

先盘点有哪些项目

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 一起看。

易错点

  • 只看运行中的项目:已停止的项目仍有容器与卷残留,加 -a 才能看到全貌
  • 把项目名当唯一标识:默认取目录名,重名项目会让后续操作落到错误的目录
  • 盘点后直接清理:卷与外部网络不随项目自动删除,清理前先确认数据是否要保留
  • 以为 ls 能列出所有容器:它按项目聚合,手工创建的容器不出现,资源盘点要两种口径都看

数据来源与参考

  • Docker 官方 CLI 参考:docker compose ls(docs.docker.com)
​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌