删除 Docker 默认的 docker0
网卡会对 Docker 网络功能产生重要影响,具体表现如下:
docker0
是 Docker 创建的默认虚拟网桥,所有未指定自定义网络的容器会连接到该网桥。删除后,新启动的容器将无法通过默认桥接网络通信。docker0
的容器会立即失去网络连接(包括容器间通信和外部访问)。dockerd
)启动时会尝试创建 docker0
。如果网卡被手动删除且 Docker 无法自动重建(例如权限问题或冲突),服务可能无法正常启动。docker0
的功能异常:如 DNS 解析、端口映射 (-p
)、--link
等特性可能失效。systemctl restart docker
)会重新创建 docker0
网卡(除非配置了 --bridge=none
或自定义网桥)。docker0
且存在残留配置(如 iptables 规则、网络命名空间冲突),可能导致重建失败。docker0
指定自定义网络:
在运行容器时使用自定义网络(如 docker network create my_net
+ --network=my_net
),避免依赖默认网桥。
docker network create my_network
docker run --network=my_network nginx
完全禁用 Docker 网络:
通过 --bridge=none
启动 Docker 守护进程(需谨慎,仅适用于特定场景)。
docker0
# 1. 重启 Docker 服务(自动重建)
sudo systemctl restart docker
# 2. 手动重建(可选)
sudo ip link add name docker0 type bridge
sudo ip addr add 172.17.0.1/16 dev docker0
sudo ip link set docker0 up
docker0
。删除后可能导致 NAT/防火墙规则混乱,需手动清理或重启服务。除非有明确需求(如使用自定义网络方案),否则不建议手动删除 docker0
。如需调整网络配置,优先通过 Docker 提供的命令(如 docker network
)操作。