web-dev-qa-db-ja.com

SpringCloud-レジストリサービスポートのカスタマイズ

SpringCloudでEurekaポートをカスタマイズしたいのですが。以下のデフォルトのポートでは、サービスレジストリはそれ自体を正しく認識します(提供されたGUI内で)

spring:
  application:
    name: services-registry
server:
  port: 8761

eureka:
  instance:
    hostname: localhost
    nonSecurePort: ${server.port}
  client:
    register-with-eureka: true
    fetch-registry: false
    service-url:
      default-zone: http://${eureka.instance.hostname}:${server.port}/eureka/

しかし、server.portを8787に変更しただけでは、サービスはそれ自体を登録できず、サービスレジストリ自体も登録できません。

2017-01-09 16:18:21.584  WARN 17496 --- [nfoReplicator-0] c.n.d.s.t.d.RetryableEurekaHttpClient    : Request execution failure
2017-01-09 16:18:21.584  WARN 17496 --- [nfoReplicator-0] com.netflix.discovery.DiscoveryClient    : DiscoveryClient_SERVICES-REGISTRY/xxx.org:services-registry:8787 - registration failed Cannot execute request on any known server

com.netflix.discovery.shared.transport.TransportException: Cannot execute request on any known server
...
2017-01-09 16:13:33.299  WARN 17496 --- [nfoReplicator-0] c.n.discovery.InstanceInfoReplicator     : There was a problem with the instance info replicator

com.netflix.discovery.shared.transport.TransportException: Cannot execute request on any known server

誰かがこの問題を説明して私の一日を救うことができますか?ありがとう!

7
Thomas Escolan

わかりました... service-urlプロパティの後のラベル(YMLではserviceUrlとしてエイリアスできます)はHashMap [〜#〜] key [〜#〜]であり、プロパティラベルではありません。したがって、キャメルケースのタグとして保持する必要があります。

eureka.client.service-url.defaultZone=http://[myIP@]:8787/eureka
11
Thomas Escolan