Docker群集的内部IP地址
我遇到了Swarm和内部IP分辨率的一个奇怪的问题。 我有一个pipe理器节点,我在其他容器上运行的工作节点上configuration代理。 所有的容器都被连接在同一个自定义覆盖networking上。
基本上,Swarm似乎无法使用正确的IP来parsing名称:
PING geoserver (10.0.0.8): 56 data bytes 64 bytes from 10.0.0.8: icmp_seq=0 ttl=64 time=0.672 ms 64 bytes from 10.0.0.8: icmp_seq=1 ttl=64 time=0.237 ms
如果我检查容器内的覆盖networking,我得到了不同的IP:
"id": { "Name": "geoserver.1.6okorb8kie28lpv5lxu135y74", "EndpointID": "id", "MacAddress": "02:42:0a:00:00:09", "IPv4Address": "10.0.0.9/24", }
那么,为什么我在同一个集群的节点上看到两个不同的IP? 哪个节点响应10.0.0.8?
这是撰写文件:
version: '3' services: proxy: image: pk/rh_proxy:base container_name: rh_proxy ports: - "80:80" deploy: placement: constraints: - node.hostname == rh02 [....] geoserver: image: kartoza/geoserver container_name: rh_geoserver deploy: placement: constraints: - node.hostname == ms02 networks: default: external: name: "rh_overlay"
和
ID HOSTNAME STATUS AVAILABILITY MANAGER STATUS la6ucl7xwnbc0hihn9fw2ugb1 * rh02 Ready Active Leader n88rw8sharboecp3t6ej0fljk db-01-bis Ready Active xa32bamrwyk2egfxdbu6xmn8j ms02 Ready Active
干杯,FB