Bam*_*bus 3 spring-boot netflix-eureka
我正在与 Eureka Netflix 合作,但遇到了一个小问题。当应用程序在 eureka 上自行注册时,它会像 DESKTOP 一样注册....
这是我的服务器属性:
server.port=8761
eureka.client.register-with-eureka=false
eureka.client.fetch-registry=false
eureka.instance.preferIpAddress=true
logging.level.com.netflix.eureka=OFF
logging.level.com.netflix.discovery=OFF
Run Code Online (Sandbox Code Playgroud)
这是客户端:
spring:
application:
name: Test 2
server:
port: 0
eureka:
client:
serviceUrl:
defaultZone: ${EUREKA_URI:http://localhost:8761/eureka}
instance:
preferIpAddress: true
Run Code Online (Sandbox Code Playgroud)
所以我认为这是一些配置问题,但我不知道是什么。
我为我找到了更好的解决方案。我像这样更改了属性文件:
eureka config
eureka.name=eureka
eureka.port=8761
eureka.preferSameZone=false
eureka.shouldUseDns=false
eureka.serviceUrl.default=http://localhost:8761/eureka/v2/
eureka.shouldOnDemandUpdateStatusChange=true
eureka.instance.leaseRenewalIntervalInSeconds=1
eureka.instance.leaseExpirationDurationInSeconds=2
# set application host
server.address=1.1.1.1
#set application port
server.port=8080
#set application name
spring.application.name=application
#configuration to set the ip of host instead of the default localhost
eureka.instance.prefer-ip-address=true
eureka.instance.ip-address=${server.address}
eureka.instance.instance-id=${server.address}:${server.port}
Run Code Online (Sandbox Code Playgroud)
现在最终它将显示在 eureka 上
1.1.1.1:8080
状态列中显示的文本是实例 ID。
在客户端使用以下配置:
eureka.instance.preferIpAddress=true
eureka.instance.instance-id=
Run Code Online (Sandbox Code Playgroud)
您可以强制 eureka 仪表板在此列中显示 ip 地址。
该属性eureka.instance.preferIpAddress只是在您请求此实例的地址时返回的地址。因此,如果您未设置eureka.instance.instance-id为 null,则实例 ID 仍包含主机名,但您获得的此实例的链接基于 ip 而不是主机名。
希望这可以帮助
| 归档时间: |
|
| 查看次数: |
7831 次 |
| 最近记录: |