自定义网络
核心命令
# 创建网络
docker network create my-net
# 创建指定子网
docker network create --subnet 192.168.1.0/24 my-net
# 使用自定义网络
docker run -d --name web --network my-net nginx
docker run -d --name app --network my-net my-app
# 连接到网络
docker network connect my-net existing-container
# 断开网络
docker network disconnect my-net existing-container
# 删除网络
docker network rm my-net
自定义网络 vs 默认 bridge
| 功能 | 默认 bridge | 自定义网络 |
|---|---|---|
| DNS 解析 | ❌ | ✅ |
| 容器名通信 | ❌ | ✅ |
| 隔离性 | 共享 | 隔离 |
# 自定义网络中可以用容器名通信
docker run --network my-net --name app my-app
# app 可以直接 ping web(通过 DNS)
小结
| 命令 | 作用 |
|---|---|
docker network create | 创建网络 |
--network | 指定网络 |
connect / disconnect | 连接/断开 |