title: Docker网络配置知识库 date: 2024-12-15T12:45:08+08:00
docker network create \
--driver bridge \
--opt "com.docker.network.bridge.enable_ip_masquerade=true" \
--subnet=172.20.0.0/16 \
--gateway=172.20.0.1 \
imaotai
```
系统开放防火墙:
iptables -t nat -A POSTROUTING -s 172.20.0.0/16 -j MASQUERADE
涉及容器拥有两个网络的情况
第一,Docker创建容器部署可访问外网的网络,如只需要临时网络可在运行cli或dockercompose时部署,例如
networks:
campus-net: #在访问内网的网络
driver: bridge
ipam:
config:
- subnet: 172.22.0.0/16 #固定临时网络IP地址
gateway: 172.22.0.1 #固定临时网络网关
imaotai: #docker单独部署的网络可访问外网
external: true
第二,在容器内部调整ip route
apt-get update
apt-get install iputils-ping
apt-get install -y iproute2
ip route #查看路由规则
ip route del default
ip route add default via 172.20.0.1 # 默认 Docker 网关 可访问外网的网关
第三,查看路由转发是否开启
cat /proc/sys/net/ipv4/ip_forward