Docker 1.12 Swarm Overlay网络发布端口
Docker 1.12 Swarm Overlay Network Published Port
我正在尝试 运行 Docker 1.12 上的一个相当简单的集群示例:
我有两个服务:
drupalapp mastermindg/rpi-apache2php7
drupaldb mysql:latest
Drupalapp 已发布端口 80:
"Endpoint": {
"Spec": {
"Mode": "vip",
"Ports": [
{
"Protocol": "tcp",
"TargetPort": 80,
"PublishedPort": 80
}
]
},
"Ports": [
{
"Protocol": "tcp",
"TargetPort": 80,
"PublishedPort": 80
}
],
"VirtualIPs": [
{
"NetworkID": "5citix4eeoe9isd2ainbt2uvn",
"Addr": "10.255.0.7/16"
},
{
"NetworkID": "6lgv0o648l7inrbu6abh5ac79",
"Addr": "10.0.9.4/24"
}
]
},
我有一个覆盖网络:
swarmed "Subnet": "10.0.9.0/24",
"Gateway": "10.0.9.1"
drupalapp 实例已启动且稳定。
我的问题是,即使我看到端口 80 在每个节点上侦听,我也无法访问任何主机上的端口 80。
如何连接到我的 swarm 上的 drupalapp 运行ning?
(将评论转化为答案)
1.12 中报告了几个关于服务发现和发布端口失败的问题。 Pull request #25603 appears to fix a bunch of them and is included in 1.12.1 which was released last week. Note that some users in issue #24789 即使在 1.12.1 中仍然报告问题,因此可能仍有一些边缘情况需要解决。
我正在尝试 运行 Docker 1.12 上的一个相当简单的集群示例:
我有两个服务:
drupalapp mastermindg/rpi-apache2php7
drupaldb mysql:latest
Drupalapp 已发布端口 80:
"Endpoint": {
"Spec": {
"Mode": "vip",
"Ports": [
{
"Protocol": "tcp",
"TargetPort": 80,
"PublishedPort": 80
}
]
},
"Ports": [
{
"Protocol": "tcp",
"TargetPort": 80,
"PublishedPort": 80
}
],
"VirtualIPs": [
{
"NetworkID": "5citix4eeoe9isd2ainbt2uvn",
"Addr": "10.255.0.7/16"
},
{
"NetworkID": "6lgv0o648l7inrbu6abh5ac79",
"Addr": "10.0.9.4/24"
}
]
},
我有一个覆盖网络:
swarmed "Subnet": "10.0.9.0/24",
"Gateway": "10.0.9.1"
drupalapp 实例已启动且稳定。
我的问题是,即使我看到端口 80 在每个节点上侦听,我也无法访问任何主机上的端口 80。
如何连接到我的 swarm 上的 drupalapp 运行ning?
(将评论转化为答案)
1.12 中报告了几个关于服务发现和发布端口失败的问题。 Pull request #25603 appears to fix a bunch of them and is included in 1.12.1 which was released last week. Note that some users in issue #24789 即使在 1.12.1 中仍然报告问题,因此可能仍有一些边缘情况需要解决。