🌐 网络管理
Docker 网络模式
| 网络模式 | 说明 | 使用场景 |
|---|---|---|
| bridge(默认) | 容器有自己的 IP,通过虚拟网桥通信 | 大多数场景 |
| host | 容器直接使用宿主机网络 | 高性能网络需求 |
| none | 没有网络 | 安全敏感的离线任务 |
| overlay | 跨主机容器通信 | Docker Swarm 集群 |
bash
# 查看所有网络
docker network ls
NETWORK ID NAME DRIVER SCOPE
a1b2c3d4e5f6 bridge bridge local
f6e5d4c3b2a1 host host local
1a2b3c4d5e6f none null local
# 创建自定义网络
docker network create my-network
# 在自定义网络中运行容器
docker run -d --name app1 --network my-network nginx
docker run -d --name app2 --network my-network nginx
# 容器之间可以通过名字通信!
docker exec app1 ping app2
PING app2 (172.18.0.3): 56 data bytes
64 bytes from 172.18.0.3: seq=0 ttl=64 time=0.089 ms📝 备注: 📝 自定义网络的魔法:在自定义网络中,容器可以用容器名作为域名互相访问,不需要记 IP 地址!默认的 bridge 网络做不到这一点。