解决服务器 Docker + Nacos + FeignClient 调用不通
背景:项目框架采用 SpringBoot + Nacos, 模块之间调用采用FeignClient,服务通过Docker部署;问题:服务通过Docker部署成功后,本地连接服务器Nacos注册中心模块之间相互调用没有问题,但服务器上各docker之间通过feignClient调用超时报错;项目nacos配置如下:spring:cloud:nacos:config:server-addr: ${CO
·
背景:
项目框架采用 SpringBoot + Nacos, 模块之间调用采用FeignClient,服务通过Docker部署;
问题:
服务通过Docker部署成功后,本地连接服务器Nacos注册中心模块之间相互调用没有问题,但服务器上各docker之间通过feignClient调用超时报错;
项目nacos配置如下:
spring:
cloud:
nacos:
config:
server-addr: ${CONFIG_NACOS_HOSTS:192.168.1.1:8848}
file-extension: yaml
group: ${CONFIG_NACOS_GROUP:DEFAULT_GROUP}
config-long-poll-timeout: 600000
discovery:
server-addr: ${DISCOVERY_NACOS_HOSTS:192.168.1.1:8848}
解决:
上述 nacos discovery 配置中加入 ip配置项如下:
spring:
cloud:
nacos:
config:
server-addr: ${CONFIG_NACOS_HOSTS:192.168.1.1:8848} # 开发时设置 CONFIG_NACOS_HOSTS 指向开发环境
file-extension: yaml
group: ${CONFIG_NACOS_GROUP:DEFAULT_GROUP}
config-long-poll-timeout: 600000
discovery:
server-addr: ${DISCOVERY_NACOS_HOSTS:192.168.1.1:8848}
ip: ${LOCAL_IP_ADDRESS:192.168.1.2}
ip配置的ip指向项目docker所在服务器的ip即可;
另外本地起程序调用时需屏蔽 此(ip) 配置。
以上,供参考~
更多推荐
已为社区贡献1条内容
所有评论(0)