有什么办法给static public IP
分配到容器中。所以容器拥有公共IP。客户端可以使用IP访问容器。如何分配静态公网IP泊坞窗容器
回答
随着泊坞窗的目前发布的版本,这是不可能的(没有很多背后码头工人的背部工作手册),虽然它很少是必要的。
码头工人通过使用端口映射的暴露在容器中的网络服务,以及端口映射可以绑定到特定IP地址的主机上。所以,如果你想拥有在192.168.10.10
一个Web服务器,并在192.168.10.20
另一个网站服务器,首先确保该地址可在主机上:
ip addr add 192.168.10.10/24 dev eth0
ip addr add 192.168.10.20/24 dev eth0
然后启动第一容器:
docker run -p 192.168.10.10:80:80 mywebserver
最后启动第二容器:
docker run -p 192.168.10.20:80:80 mywebserver
在上述命令时,-p
选项用于端口映射绑定到partic ular ip地址。现在你有两个容器在同一个端口(端口80)上提供服务,但在不同的IP地址上。
现在,这应该有可能与码头工人1.10和new docker run --ip
option,你现在在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的博客文章 “IPs for all the Things” 看,和拉请求docker/docker#19001。
我得知你提供了一些IP 172.20.128.2到容器。但我怎么能访问在这个容器在IP 172.20.128.2运行的网站。我不想做端口转发和使用主机IP。 – thinkingmonster
@thinkingmonster好问题:请问这是我自己或其他人提出替代方案的问题。 – VonC
我刚问过这个问题,请赐教。 http://stackoverflow.com/questions/40060764/how-can-i-access-the-website-running-inside-a-docker-container-using-ip-address – thinkingmonster
- 1. 如何使用泊坞远程API为静态IP地址分配给容器
- 2. 泊坞窗公共网络配置
- 3. 泊坞窗容器
- 4. 如何内存分配在泊坞窗
- 5. 启动泊坞窗容器
- 6. 在泊坞窗容器
- 7. 泊坞窗链接容器
- 8. 泊坞窗Exec用容器
- 9. 泊坞窗容器CPU百分比
- 10. 如何阅读泊坞窗容器
- 11. 如何通过ssh泊坞窗容器
- 12. 泊坞窗网络
- 13. 将Redis DB泊坞窗容器暴露给NodeJS泊坞窗容器
- 14. 泊坞容器
- 15. 怎么拉泊坞窗的网络配置和容器
- 16. 如何运行泊坞窗,构成对泊坞窗群(不含泊坞窗机)
- 17. 沟通,从泊坞窗泊坞容器主机
- 18. 从boot2docker泊坞窗容器中运行查找主机IP/OSX
- 19. 从泊坞容器
- 20. 泊坞窗 - 编辑“泊坞窗”文件
- 21. 泊坞窗容器访问本地DNS
- 22. 泊坞窗最大离线容器
- 23. Ulimits在泊坞窗主机VS容器
- 24. 无法ping泊坞窗IPv6的容器
- 25. 泊坞窗容器主机路由
- 26. 泊坞窗容器的写权限
- 27. 泊坞窗Neo4j的容器,只是挂
- 28. 泊坞窗 - 用PHP搬运工容器
- 29. 打开泊坞窗守护容器外
据说我需要先将静态公网IP分配给主机。然后使用'-p'将ip绑定到容器。 – firelyu
在由larsks建议的解决方案中,我们是否也可以将相同的码头集装箱连接到由@VonC在解决方案中创建的码头网络? – Amitabh
当docker主机也有绑定到0.0.0.0:80的服务器时会发生什么? –