首页/云/Docker 容器速查/compose 项目资源清理核对
Compose 编排55 条

compose 项目资源清理核对

down 之后核对残留:用项目标签反查容器、网络、卷、镜像,确认没有未清理资源,避免端口与磁盘被长期占用。

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

down 之后核对残留

compose down 默认删除项目里的容器与网络,但命名卷与镜像不会跟着走,外部引用的资源更是完全不管。清理完要按项目标签反查一遍:容器、网络、卷都能用 com.docker.compose.project 标签筛出来,逐个确认没有遗漏,才能避免端口、IP 段与磁盘被长期占用。

基本信息

反查标签com.docker.compose.project=<项目名>
核对对象容器 / 网络 / 卷三类分别反查
命令形式docker ps -a --filter label=… 等
边角情况external 资源与孤儿容器不会被自动清理

典型使用场景

  • 项目下线收尾:确认容器、网络、卷都没有残留
  • 磁盘回收:定位到具体项目名再决定删哪些卷
  • 端口与网段释放:残留网络会占用子网,影响后续项目创建
  • 变更前备份:清理卷之前确认数据是否需要先导出
  • 多环境共存核对:一台机器上多个项目的标签比对,避免误删

逐类反查

逐类反查
# 先看有哪些项目
docker compose ls -a

# 按项目标签反查容器
docker ps -a --filter label=com.docker.compose.project=shop

# 反查网络与卷
docker network ls --filter label=com.docker.compose.project=shop
docker volume ls --filter label=com.docker.compose.project=shop

# 需要连卷一起删时执行
docker compose down -v

# 连同本地构建的镜像一起删
docker compose down --rmi local

down 参数对照

参数作用注意
down停止并删除容器与网络不动卷与镜像
down -v同时删除项目命名卷数据删除后无法从容器侧恢复
down --rmi local删除本地构建的镜像不影响从仓库拉取的镜像
down --remove-orphans清掉同项目但不在编排文件里的容器只作用于本项目标签的容器
external 声明的网络与卷不随项目删除,这是设计行为,不要误判成清理失败。
卷清理是单向操作,删之前确认数据是否需要保留或导出,容器侧没有可用的恢复路径。
清理顺序建议先容器、再网络、最后卷:容器还在时卷无法删除,先删容器能避免一半的报错;核对完成后再把项目的编排文件目录归档或删除,保证下次不会误启动。

易错点

  • 用 down 当彻底清理:卷与镜像默认保留,磁盘与网段仍在占用,收尾要按标签逐类核对
  • 清理卷前不确认数据:删除后无法从容器恢复,重要数据先导出再动手
  • 误删同机其它项目的资源:过滤条件要带完整项目名,只按类型过滤风险很高
  • 忽略孤儿容器:编排文件改过后会留下不在定义里的旧容器,用 --remove-orphans 或手工清理

数据来源与参考

  • Docker 官方文档:Compose 资源与标签(docs.docker.com)
​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌