docker网络管理核心是查、建、看:用docker network ls查看所有网络,docker network create创建自定义bridge或overlay网络,docker network inspect检查配置与连通性,并支持动态connect/disconnect容器。

用 docker network 管理网络,核心就三件事:查、建、看。不需要复杂配置也能起步,但关键参数和常见组合得记牢。
查看所有网络(docker network ls)
列出当前主机上所有网络,包括默认的 bridge、host、none 和你创建的自定义网络:
- 直接运行
docker network ls,输出含 NETWORK ID、NAME、DRIVER、SCOPE - 加
-f "driver=bridge"可过滤只看桥接类网络 - 加
--format "{{.Name}}: {{.Driver}}"能定制输出格式,适合脚本处理
创建自定义网络(docker network create)
默认创建的是用户定义的 bridge 网络,比默认 bridge 更可控、支持容器名 DNS 解析:
- 最简用法:
docker network create mynet - 指定子网和网关:
docker network create --subnet 192.168.50.0/24 --gateway 192.168.50.1 mynet - 限制 IP 分配范围:
--ip-range 192.168.50.128/25,避免地址冲突 - 跨主机要用 overlay:
docker network create --driver overlay --attachable myoverlay(需 Swarm 初始化)
查看网络详情与连通状态(docker network inspect)
确认网络配置是否生效、哪些容器已接入、IP 分配是否符合预期:
-
docker network inspect mynet显示完整 JSON,含子网、网关、已连接容器列表 - 重点看
Containers字段,确认目标容器是否在其中 - 搭配
-f提取关键信息,例如:docker network inspect -f '{{range .IPAM.Config}}{{.Subnet}}{{end}}' mynet直接输出子网
连接/断开容器(docker network connect / disconnect)
不重启容器就能动态调整网络归属:
- 把已有容器加入自定义网络:
docker network connect mynet nginx-container - 从某网络断开:
docker network disconnect mynet nginx-container - 注意:不能从
host或none网络断开,它们是启动时绑定的固定模式











