首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >spring cloud eureka docker多网卡ip注册异常

spring cloud eureka docker多网卡ip注册异常

作者头像
用户10325771
发布于 2023-03-01 17:33:23
发布于 2023-03-01 17:33:23
1.3K0
举报

文章目录[隐藏]

开发环境下,没有使用docker swarm 方式部署,没有问题。但是线上的生产环境使用了docker swarm做了集群,网络方式使用了 overlay方式 ,这样造成一个问题,如果容器中的服务向eureka注册时,ip地址获取到的永远都是第一张网卡的ip,这样造成的问题就是使用feign无法访问容器服务,但是容器间ping的通。

解决办法

yml 配置解决

必须在bootstrap.yml文件中添加配置才能生效,在application.yml中添加无效!

忽略特定网卡

代码语言:javascript
复制
spring:
  cloud:
    inetutils:
      ignoredInterfaces: //匹配正则表达式忽略
        - docker0
        - veth.*

优先使用ip

代码语言:javascript
复制
spring:
  cloud:
    inetutils:
      preferredNetworks: //匹配正则表达式优先使用ip段,list配置 从上到下找,找到哪个用哪个
        - 192.168
        - 10.0

docker compose 配置解决

忽略特定网卡

代码语言:javascript
复制
....
environment:
   - spring.cloud.inetutils.ignoredInterfaces=docker0,veth.*
....

优先使用ip

代码语言:javascript
复制
....
environment:
   - spring.cloud.inetutils.preferredNetworks=192.168,10.0
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2020-12-12),如有侵权请联系 cloudcommunity@tencent.com 删除
目录
  • 解决办法
  • yml 配置解决
    • 忽略特定网卡
    • 优先使用ip
  • docker compose 配置解决
    • 忽略特定网卡
    • 优先使用ip
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档