【Nacos-应用】1.解决Nacos服务注册使用Docker容器内网ip问题

 返回首页 > 【笔记】Spring Cloud Alibaba Nacos

场景:

        spring boot 服务运行docker容器中

        nacos 注册中心

问题:

        Nacos服务注册ip为内网ip,导致Fegin无法根据服务名访问        

解决方案:

方案一:设置参数: --network=host
 

docker run -d --network=host --name app-demo registry.cn-hangzhou.aliyuncs.com/zhengqing/app-demo


使用--network=host 主机网络模式无需-p 80:80 ,容器运行时将会使用宿主机的网络信息,即会拿到宿主机的ip注册到nacos上; 这个时候我们无需-p 80:80指定服务端口运行,因为--network=host模式会使用服务本身启用的端口。

方案二: nacos指定注册ip   修改 application.yml (推荐)

配置 application.yml

spring:
  cloud:
    nacos:
      discovery:
        ip: xx
        port: xx   #如果设置的server:port 这里可以不填

你可能感兴趣的:(SpringCloud,alibaba微服务实战,docker,容器,java)