首页/云/云与容器速查/docker rm 删除容器
容器与 Docker106 条

docker rm 删除容器

删除已停止的容器:运行中需 -f 或先 stop;-v 连同匿名卷一起删除,避免卷残留占用磁盘。

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

docker rm 是什么

docker rm 删除容器,默认只能删已停止的容器;要删运行中的必须加 -f,它会先发 SIGKILL 再删除。容器删除后其可写层一并消失,因此删之前要确认数据是否已经落在数据卷或宿主目录里。加 -v 可以连同匿名卷一起删除,避免卷残留在磁盘上慢慢堆积。

基本信息

语法docker rm [-f] [-v] 容器 [容器…]
-f强制删除运行中的容器,等于先杀进程再删
-v删除容器关联的匿名卷,具名卷不受影响
批量docker rm $(docker ps -aq) 或 docker container prune
依赖顺序删容器 → 删镜像的依赖链,反向操作会报冲突

典型使用场景

  • 重建容器:改配置或换镜像时先删旧容器再按同样参数运行
  • 清理退出容器:批量删除已退出实例,释放磁盘与容器名占用
  • 释放容器名:容器名重复导致新容器创建失败,删掉旧的即可
  • 环境重置:测试环境整体清空,配合 container prune 一次做完
  • 排查磁盘:容器可写层写满磁盘,删除无用容器回收空间

常用示例

常用示例
docker rm myapp                            # 删除已停止的容器
docker rm -f myapp                          # 强制删除运行中的容器(先杀进程)
docker rm -v myapp                          # 同时删除匿名卷,避免卷残留
docker rm $(docker ps -aq --filter "status=exited")   # 批量清理已退出容器
docker container prune                       # 等价于批量删除停止的容器

删除行为对照

命令运行中容器匿名卷具名卷
docker rm报错拒绝保留保留
docker rm -f强制删除保留保留
docker rm -v报错拒绝一并删除保留
docker rm -fv强制删除一并删除保留
docker container prune跳过运行中保留保留
只删容器不删匿名卷,会让 /var/lib/docker/volumes 缓慢膨胀,是磁盘被悄悄占满的常见来源。定期用 docker system df -v 查看卷占用。
-v 只清理匿名卷,具名卷必须显式 docker volume rm。承载数据库数据的卷误删不可恢复,删除前先确认卷名与用途。
删除容器是老旧的清理手段:容器可写层与容器名会一起释放,但镜像、网络与具名卷都不受影响,磁盘占用不会因此明显下降。

易错点

  • -f 强删运行中的容器,正在处理的请求全部失败,可能造成数据半写入
  • 删除后重建容器时忘了原来的挂载目录与网络参数,配置丢失导致服务起不来
  • 以为删了容器数据就没了,实际匿名卷还在占用磁盘
  • 误删承载数据库数据的具名卷,数据无法恢复
  • 批量删除时表达式写宽(如未加状态过滤),把仍在运行的容器一起带上

数据来源与参考

  • Docker Docs:docker rm
  • Docker Docs:docker container prune

相关工具

​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌