如何使Spring Cloud Consul向外部IP注册?
我在docker中使用spring cloud consul运行spring boot应用程序。
该应用程序正在docker集群上的docker网络内部运行。
这意味着,如果spring consul向主机名或IP地址注册,它将获得docker swarm内部的主机名或ip地址。我的领事服务器在docker群之外。
最佳答案
您可以在外部设置spring.cloud.consul.discovery.ipAddress
并设置属性spring.cloud.consul.discovery.preferIpAddress=true
。
另外,您可以control which network interfaces派生IP地址。
在Brixton中,您可以忽略接口:
spring:
cloud:
inetutils:
ignoredInterfaces:
- docker0
- veth.*
在卡姆登(目前为RC1)中,您还可以将网络列入白名单:
spring:
cloud:
inetutils:
preferredNetworks:
- 192.168
- 10.0
关于java - 如何使Spring Cloud Consul向外部IP注册?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/39461420/