测试环境:
spring-cloud-alibaba : 2.1.0.RELEASE 使用 spring-cloud-starter-alibaba-nacos-discovery 和 spring-cloud-starter-dubbo 两个组件。 在本地单网卡情况下,一切正常,服务注册与发现都可用。
在测试环境,docker部署(net: "host"),多网卡情况下, org.apache.dubbo.common.utils.NetUtils.getLocalHost() 得到的是 docker 的ip 172.17.0.1, 而 org.springframework.cloud.commons.util.InetUtils.findFirstNonLoopbackHostInfo().getIpAddress()得到的却是本机IP 10.133.0.123。
这样就会有一个问题,本地环境想消费测试环境里的某个服务时,找不到。本地向nacos注册的IP与测试环境IP 10.133.0.123 在同一网内。找不到 172.17.0.1, 这个IP。
原提问者GitHub用户mostcool
Dubbo Spring Cloud支持InetUtils,您可以使用Spring.Cloud.InetUtils前缀来配置一些配置。
原回答者GitHub用户fangjian0423
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。
阿里云拥有国内全面的云原生产品技术以及大规模的云原生应用实践,通过全面容器化、核心技术互联网化、应用 Serverless 化三大范式,助力制造业企业高效上云,实现系统稳定、应用敏捷智能。拥抱云原生,让创新无处不在。