Skip to content

🌐 网络管理

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 网络做不到这一点。