清理 Docker 残留网络:解决 ifconfig 中陌生的网桥接口
2026-02-14 tech docker network linux 2 mins 761 字

最近在服务器上查看网络配置,发现 ifconfig 里多了两个陌生的网桥接口:
br-112c7faa4714 br-8f522120d6b1
不记得自己创建过这些。查了一下,原来是 Docker 留下的”网络垃圾”。
发生了什么?
用 Docker Compose 跑过容器后,即使容器已经删除了,Docker 网络可能还留着。
比如之前部署 n8n,用 docker-compose up -d 会自动创建两个网络:
n8n_defaultn8n_n8n-network
后来 n8n 容器不跑了,但这两个网络还在系统里拖着,网桥接口自然就出现了。
怎么查看?
# 查看所有 Docker 网络
docker network ls
# 查看具体网络的连接情况
docker network inspect <网络名>
看 Containers 字段,如果是空的 {},说明没有容器连这个网络了:
"Containers": {}
怎么清理?
# 删除指定网络
docker network rm n8n_n8n-network
docker network rm n8n_default
删掉之后,ifconfig 里那些陌生的网桥接口就消失了。
更好的习惯
下次用 docker-compose down 的时候,加 --remove-orphans 参数:
docker-compose down --remove-orphans
这样会顺便把 Compose 创建的网络一起清理掉,避免留下垃圾。
一键清理脚本
如果想偷懒,可以定期跑这个,清理所有未使用的网络:
docker network prune -f
会删除所有没有被容器使用的网络。
一句话总结:容器删了不等于网络会删,定期 docker network prune 能让服务器干净点。