首页/云/云与容器速查/docker network rm 与 prune
容器与 Docker106 条

docker network rm 与 prune

删除自定义网络回收资源:有容器(含停止)连接时拒绝删除;prune 批量清理未被使用的网络。系统内置的 bridge/host/none 永远不会被删。

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

删除网络与批量清理

自定义网络用完需要回收:只要还有容器挂着端点(包括已停止的容器),删除就会被拒绝;批量清理命令只会删掉当前无人使用的自定义网络,内置的几种网络永远不参与删除。残留网络本身占用资源不多,但会持续累积网段与记录,久而久之引发地址冲突与排查困难。规范的清理顺序是先查看占用、断开或停止容器,再执行删除。

基本信息

单个删除docker network rm 网络名,被占用时报错并提示存在活动端点
批量清理docker network prune,只删无人使用的自定义网络,会二次确认
按条件清理prune 支持过滤条件,例如只清理保留一段时间以上的网络
内置网络默认桥接、宿主、none 三种内置网络不参与删除
占用排查用 inspect 查看网络的容器记录,确认是谁还挂着
强制断开disconnect 支持强制断开容器,连接状态异常时可用

典型使用场景

  • 编排项目下线后清理残留网络,避免网段越堆越多
  • 手工创建的网络用完即删,保持环境干净
  • 排查地址冲突:先确认是否存在同名或同网段的残留网络
  • 重跑初始化脚本前清空环境,避免网络名已存在的报错
  • 批量维护时清掉长期无人使用的网络,回收资源

使用示例

使用示例
docker network inspect mynet -f '{{json .Containers}}'   # 看谁还挂在网络上
docker network disconnect -f mynet web-1   # 强制断开占用容器
docker network rm mynet   # 断开后再删除
docker network prune   # 批量删除无人使用的自定义网络(会二次确认)
docker network prune -f --filter 'until=24h'   # 清理保留超过一天的无人使用网络
docker network ls   # 复核清理结果

操作结果读法

操作占用时的行为说明
删除单个网络报错提示存在活动端点需先停止或断开容器
强制断开从容器上摘掉该网络容器连接异常时的补救手段
批量清理跳过仍被使用的网络只清理无人使用的自定义网络
内置网络不参与删除默认桥接、宿主与 none 永久保留
编排项目下线通常会自动删除它创建的网络:残留网络大多来自手工创建或异常中断的项目。
常见网络名容易重名:删除前先用列表命令核对名称与创建时间,避免误删其他项目正在使用的网络。

易错点

  • 删不掉就重启守护进程:会中断所有业务,正确做法是先断开或停止占用容器
  • 批量清理删掉了其他项目依赖的网络:多项目共用网络时务必先确权
  • 忽略已停止容器仍占用端点:删除总报错,误以为是运行时自身故障
  • 反复创建网络却不清理:网段与记录不断累积,遇到地址冲突才回头排查
  • 清理时只看名字不看创建时间:误删了正在使用的环境,服务立刻不可达

数据来源与参考

  • Docker Docs:docker network rm
  • Docker Docs:docker network prune

相关工具

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