如何在云实例中为Docker网络分配子网并给Traefik配置静态IP?
VPS上Traefik反向代理的静态IP与Docker网络配置方案
一、子网分配逻辑
你的VPS提供的VPC网段是10.115.0.0/20,这是私有内部网段,适合配置Docker自定义网络——既不会和公网IP冲突,也能保证容器和VPC内其他资源的连通性。考虑到eth1已经占用了10.115.0.2,我们选择该VPC网段内不重叠的子子网:
- 给Traefik所在的
t2_proxy网络分配10.115.1.0/24 - 给
socket_proxy网络分配10.115.2.0/24
二、完整Docker网络配置块
替换你提供的模板后,最终的网络配置如下:
networks: t2_proxy: name: t2_proxy driver: bridge ipam: config: - subnet: 10.115.1.0/24 default: driver: bridge socket_proxy: name: socket_proxy driver: bridge ipam: config: - subnet: 10.115.2.0/24
三、Traefik容器静态IP配置
在Traefik的docker-compose.yml服务块中,指定t2_proxy网络下的静态IP,示例如下:
services: traefik: image: traefik:v2.11 # 此处省略Traefik的端口、命令、卷挂载等其他配置 networks: t2_proxy: ipv4_address: 10.115.1.10 # 选择t2_proxy子网内未被占用的IP即可,比如10
四、关键注意事项
- 确认所选子网未被VPC内其他设备占用,可通过VPS控制台或执行
ip route命令查看已分配IP - 静态IP必须在对应子网的可用范围内(比如
10.115.1.0/24的可用IP是10.115.1.1到10.115.1.254) - 不要使用子网的网络地址(如
10.115.1.0)或广播地址(如10.115.1.255)作为容器静态IP
内容的提问来源于stack exchange,提问作者Kranja
相关产品推荐
相关产品推荐

