有什么方法可以将 static public IP
分配给容器。所以容器有公网IP。客户端可以通过 IP 访问容器。
原文由 firelyu 发布,翻译遵循 CC BY-SA 4.0 许可协议
有什么方法可以将 static public IP
分配给容器。所以容器有公网IP。客户端可以通过 IP 访问容器。
原文由 firelyu 发布,翻译遵循 CC BY-SA 4.0 许可协议
现在应该可以使用 docker 1.10 和 新的 docker run --ip
您现在在 docker network connect
中看到的选项。
如果指定,则在重新启动停止的容器时重新应用容器的 IP 地址。如果 IP 地址不再可用,则容器无法启动。
保证 IP 地址可用的一种方法是在创建网络时指定
--ip-range
,并从该范围之外选择静态 IP 地址。这可确保当该容器不在网络上时,不会将 IP 地址提供给另一个容器。
$ docker network create --subnet 172.20.0.0/16 --ip-range 172.20.240.0/20 multi-host-network
$ docker network connect --ip 172.20.128.2 multi-host-network container2
另请参阅 Jessie Frazelle 的博客文章“ 所有事物 的 IP”,以及拉取请求 docker/docker#19001 。
原文由 VonC 发布,翻译遵循 CC BY-SA 4.0 许可协议
2 回答2.4k 阅读✓ 已解决
2 回答800 阅读✓ 已解决
1 回答1.4k 阅读✓ 已解决
2 回答1.4k 阅读
1 回答1.6k 阅读
2 回答1.2k 阅读
1 回答967 阅读
对于当前发布的 Docker 版本,这是不可能的(在 Docker 背后没有大量的手动工作),尽管很少有必要。
Docker 通过使用端口映射在容器中公开网络服务,端口映射可以绑定到您主机上的特定 IP 地址。因此,如果您想在 — 上拥有一个 Web 服务器,在
192.168.10.10
192.168.10.20
拥有另一个 Web 服务器,请首先确保您的主机上可以使用以下地址:然后启动第一个容器:
最后启动第二个容器:
在上述命令中,
-p
选项用于将端口映射绑定到特定的 IP 地址。现在,您有两个容器在同一端口(端口 80)上提供服务,但在不同的 IP 地址上。