docker中有consul server。
vote-consul-server:
image: consul:1.7.2
environment:
CONSUL_BIND_INTERFACE: eth0
ports:
- "${CONSUL_PORT}:8500"
它为注册的应用程序生成主机。 主要问题是,如果其他应用程序不在 docker 中,则它们之间无法相互通信。
例如:我有配置服务(docker with consul),用户服务(IDE)。 当 user-service 启动时,它会从 config-server 请求配置,但 consul 给出的链接不正确(仅在 docker 网络中可用)。
c.c.c.ConfigServicePropertySourceLocator : Fetching config from server at : http://83a6c7ab12d0:8888/
如何从 consul(docker) 发布所有链接?
最佳答案
由于每个容器都有自己的IP
并且可能有自己的网络,你可以尝试使用host
网络:
docker run --rm -d --network host --name vote-consul-server
有关详细信息,请参阅 host networking tutorial .
关于spring-boot - 来自 docker 的 Consul 共享网络,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61039841/