我通过ip故障转移正确配置docker容器时遇到了一些问题。
我在系统管理员方面不太好,但我已经正确配置了我的ip故障转移,我想用他的docker容器绑定他。
我不知道该怎么做,我找不到任何解释这一点的资源。
当我从网上访问我的主ip(服务器Debian 195.xxx)时,我可以看到他运行(apache2默认页面),当我从网络上进行ip故障转移时,我也看到了apache2默认页面)我的Debian服务器,此时我认为没关系。
所以,当我跑:
docker run -d --name ubuntu_01 -p 62.x.x.x:9000:80 abdev/ubuntu tail -f /dev/null
62.xxx是我的ip故障转移,之后我从网上进行ip故障转移,但又有我的默认页面(apache2 Debian,而不是Ubuntu,这是我的docker容器)。
我误解了什么?欢迎任何资源,线索或帮助。
抱歉我的英语不好,我尽力做到最好。
答案 0 :(得分:3)
这是你的网络:
您现在可能只有一个Docker主机,但具有 IP故障转移的目的是能够将流量切换到其他主机,而无需用户更改目标IP地址。 / p>
假设你有2个相同的docker主机,除了主网络接口的IP地址(eth0
)。
您希望在两台主机上运行docker容器,并且希望容器内运行的apache Web服务器能够回答每台主机的2个IP地址。
在 docker host A 上,使用docker run -p 9000:80 ...
启动泊坞窗容器。
在 docker host B 上,也可以使用docker run -p 9000:80 ...
启动泊坞窗容器。
现在,在您的托管服务提供商管理面板上,您将IP故障转移62.1.2.3
分配给主机A ,您将能够:
http://62.1.2.3:9000/
http://192.0.0.17:9000/
http://192.0.0.47:9000/
稍后,当您在托管服务提供商管理面板上,将IP故障转移62.1.2.3
分配给主机B 时,您将能够:
http://62.1.2.3:9000/
http://192.0.0.17:9000/
http://192.0.0.47:9000/
至少,您还可以使用192.0.0.17
和192.0.0.47
IP地址查询您的Web服务器,以测试两台主机上的Web服务器是否正常运行,无论IP故障转移设置如何。
答案 1 :(得分:1)
非常感谢@thomasleveil回答我的问题。
我原以为它本来会更复杂但最终我做到了。
对于简历,我设置了我的IPFO:
source /etc/network/interfaces.d/*
# The loopback network interface
auto lo
iface lo inet loopback
# The primary network interface
auto eth0
iface eth0 inet static
address 195.x.x.x
netmask 255.255.255.0
gateway 195.x.x.x
auto eth0:0
iface eth0:0 inet static
address 62.x.x.x
netmask 255.255.255.255
使用以下命令运行我的容器:
$ docker run -it --name ubuntu_01 -p 9000:80 docker/box tail -f /dev/null
我可以从主服务器IP和IPFO访问我的容器。
我认为这是一个基本的配置,但它的工作!
我想投票给你答案,但stackoverflow禁止新成员投票。
再次感谢您的时间:)