docker如何将容器设置为仅使用指定范围内的ips
Posted
技术标签:
【中文标题】docker如何将容器设置为仅使用指定范围内的ips【英文标题】:docker how to set containers to only use ips within a sepcified range 【发布时间】:2017-05-04 09:55:13 【问题描述】:在 docker 中如何设置以便创建的任何容器都有一个 ip 在一个范围内。
例如,我会为所有容器分配一个从 172.20.x.x 开始的 ip
在我当前的实例上
我已经默认创建了这些界面
docker0 是 ip 地址 172.17.0.1
br0-52fxxx ip地址172.18.0.1
我的容器的 IP 地址从 172.18.x.x 开始
关于使用 --bip=CIDR 的建议,这不是设置 docker0。 docker0 是问题吗,因为即使在我的示例中我的 docker0 是 172.17.0.1 我的容器开始 172.18.x.x
我相信我需要 br0 接口为 172.20.0.1 才能影响所有容器 从 172.20.x.x 开始分配 ips
我认为问题是如何通过 docker daemon 自动将 br0 接口设置为 172.20.0.1?
【问题讨论】:
你试过什么?提供一些例子 您使用的是哪个版本的 docker,以及哪个操作系统? centos 7 - docker 17.03 ce 我很确定容器应该默认在 docker0 接口上启动 【参考方案1】:docker 守护进程的--bip flag 允许您更改 docker0 的 CIDR 配置。
--bip=CIDR
:使用标准 CIDR 表示法为 docker0 网桥提供特定的 IP 地址和网络掩码。例如:192.168.1.5/24。
对于您的范围,这看起来像这样:--bip=172.20.0.0/16
【讨论】:
请查看添加的更多信息以上是关于docker如何将容器设置为仅使用指定范围内的ips的主要内容,如果未能解决你的问题,请参考以下文章