docker network
管理 Docker 网络:创建、查看、连接和删除
语法
docker network <COMMAND>
参数
| 参数 | 说明 | 示例 | 级别 |
|---|---|---|---|
create |
创建网络 | docker network create my-net |
常用 |
ls |
列出所有网络 | docker network ls |
常用 |
inspect |
查看网络详情 | docker network inspect my-net |
常用 |
connect |
将容器连接到网络 | docker network connect my-net web |
常用 |
disconnect |
将容器从网络断开 | docker network disconnect my-net web |
常用 |
rm |
删除网络 | docker network rm my-net |
常用 |
--driver |
指定网络驱动(bridge/overlay/host) | docker network create --driver overlay my-net |
进阶 |
示例
创建自定义网络
docker network create app-network
自定义网络支持容器名 DNS 解析
将容器加入网络
docker network connect app-network my-container
运行中的容器也可以动态加入
创建带子网的网络
docker network create --subnet=172.20.0.0/16 my-net
指定 IP 段
查看网络中的容器
docker network inspect app-network
可以看到连接的容器及其 IP
常见错误
network with name xxx already exists
网络名已存在,换个名字或先删除旧网络
network xxx not found
网络不存在,用 docker network ls 确认名称
container already connected to network
容器已在该网络中,无需重复连接
技巧
- 自定义 bridge 网络中容器可以通过容器名互相访问
- 默认 bridge 网络不支持 DNS 解析,建议创建自定义网络
- 同一网络中的容器可以互相通信,不同网络默认隔离