Nacos注册实例端口匹配management.port而非server.port问题求助
解决方案
可以通过修改配置文件直接解决这个问题,核心是明确指定Nacos服务注册时使用的端口为业务服务端口(8081),而非默认的管理端口。
修改application.properties配置
在现有配置基础上添加指定注册端口的配置项:
server.port=8081 server.servlet.context-path=/open/api management.port=8079 # 强制指定注册到Nacos的服务端口为业务服务端口 spring.cloud.nacos.discovery.port=${server.port}
原理说明
出现该问题的原因是:当单独配置了management.port(旧版Spring Boot)或management.server.port(新版Spring Boot)时,部分版本的Spring Cloud Nacos客户端会默认将管理端口作为服务实例的注册端口。通过spring.cloud.nacos.discovery.port显式绑定${server.port},就能让Nacos注册你的业务服务端口8081,确保网关使用正确端口进行服务分发。
注:若使用Spring Boot 2.3及以上版本,
management.port已被废弃,需替换为management.server.port,但指定Nacos注册端口的配置逻辑保持一致。
内容的提问来源于stack exchange,提问作者myth
相关产品推荐
相关产品推荐

