美文网首页
spring cloud docker 部署遇到问题

spring cloud docker 部署遇到问题

作者: 光小月 | 来源:发表于2019-08-09 15:42 被阅读0次

1. 多网卡问题

https://segmentfault.com/a/1190000014140524

原因:

spring cloud中对于网络ip地址的选择类为:eureka-client模块下org.springframework.cloud.commons.util.InetUtil

通过InetUtils.findFirstNonLoopbackAddress()方法拿到
如果仍然没有找到合适的IP, 那么就将jdk的InetAddress.getLocalHost()做为最后的fallback方案。

解决:

1 忽略网卡:spring.cloud.inetutils.ignored-interfaces
2 指定IP:spring.cloud.inetutils.preferred-networks
3 修改Host文件
4 指定实例IP
5 通过jar命令参数

----1
#忽略eth0, 支持正则表达式
spring.cloud.inetutils.ignored-interfaces[0]=eth0 
----2
#preferred-networks是指倾向于使用的IP地址,接收一个正则表达式数组,用于选择Spring Cloud应用使用的本机的IP地址。
spring.cloud.inetutils.preferredNetworks[0]=^192\.168 
----3
#当网查遍历逻辑都没有找到合适ip时会走JDK的InetAddress.getLocalHost()。
该方法会返回当前主机的hostname, 然后会根据hostname解析出对应的ip。因此第二种方案就是配置本机的hostname和/etc/hosts文件,直接将本机的主机名映射到有效IP地址。
----4
#指定此实例的ip
eureka.instance.ip-address=
#注册时使用ip而不是主机名
eureka.instance.prefer-ip-address=true

-----5
java -jar xxx.jar --spring.cloud.inetutils.preferred-networks= #需要设置的IP地址
或者
java -jar xxx.jar --spring.cloud.inetutils.ignored-interfaces= #需要过滤掉的网卡
  1. docker 如何实现迭代部署

相关文章

网友评论

      本文标题:spring cloud docker 部署遇到问题

      本文链接:https://www.haomeiwen.com/subject/tubhlctx.html