Spring Eureka ищет порт 8761 по умолчанию вместо пользовательского порта

У меня есть серверное приложение Spring Boot Eureka, которое настроено для работы на порту 5000 вместо порта 8761 по умолчанию. Однако, когда я запускаю SBA, я получаю в консоли некоторые ошибки, связанные с отказом в подключении java, при прослушивании localhost: 8761

INFO 10408 --- [freshExecutor-0] com.netflix.discovery.DiscoveryClient : Getting all instance registry info from the eureka server ERROR 10408 --- [tbeatExecutor-0] c.n.d.s.t.d.RedirectingEurekaHttpClient : Request execution error. endpoint=DefaultEndpoint{ serviceUrl='http://localhost:8761/eureka/}

com.sun.jersey.api.client.ClientHandlerException: java.net.ConnectException: Connection refused: connect at com.sun.jersey.client.apache4.ApacheHttpClient4Handler.handle(ApacheHttpClient4Handler.java:187) ~[jersey-apache-client4-1.19.1.jar:1.19.1]

Позже, когда я вызываю другие микросервисы, я вижу, что они правильно регистрируются в eureka, работающем на порту 5000. Но почему приложение сначала игнорирует конфигурацию при запуске сервера Eureka?

Также, как видно из встроенной картинки, сервер ищет зарегистрированные и недоступные реплики в 8761.

Spring Eureka ищет порт 8761 по умолчанию вместо пользовательского порта

Буду очень признателен за любые объяснения по этому поводу.

Пожалуйста, предоставьте подтверждение клиента

spencergibb 05.07.2019 00:12

В этом проекте мне не хватало самостоятельного поиска/регистрации со свойствами Eureka в false. Ниже приведены правильные ответы.

Spear A1 05.07.2019 18:21
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
Поднятие тревоги для долго выполняющихся методов в Spring Boot
Поднятие тревоги для долго выполняющихся методов в Spring Boot
Приходилось ли вам сталкиваться с требованиями, в которых вас могли попросить поднять тревогу или выдать ошибку, когда метод Java занимает больше...
Версия Java на основе версии загрузки
Версия Java на основе версии загрузки
Если вы зайдете на официальный сайт Spring Boot , там представлен start.spring.io , который упрощает создание проектов Spring Boot, как показано ниже.
Документирование API с помощью Swagger на Springboot
Документирование API с помощью Swagger на Springboot
В предыдущей статье мы уже узнали, как создать Rest API с помощью Springboot и MySql .
3
2
6 537
3
Перейти к ответу Данный вопрос помечен как решенный

Ответы 3

Default port for eureka server is 8761 but you can override it using server.port property in application.properties file or application.yml file. 

For e.g.
(application.properties)
   server.port=5000 
(application.yml)
   server:   
    port: 8761

One more thing, you need to specify following properties too to avoid auto registration of eureka.

**application.properties file:-**

eureka.client.registerWithEureka = false
eureka.client.fetchRegistry = false

**application.yml file :-** 

eureka:
   client:
      registerWithEureka: false
      fetchRegistry: false

It should start your application on port 5000. If you still face any issues, just show your properties or yml file code here.

Пожалуйста, настройте сервер eureka, как показано ниже. Сервер eureka также будет действовать как клиент eureka. Итак, сервер пытается зарегистрироваться как клиент и ищет порт по умолчанию 8761.

server:
  port: 9000

eureka:
  client:
    register-with-eureka: false
    fetch-registry: false
    service-url:
      defaultZone: http://localhost:9000/eureka

Ответ принят как подходящий

Даже после добавления для параметра registerWithEureka и fetchRegistry значения false он по-прежнему указывал на 8761 для URL-адреса реплики.

eureka.client.registerWithEureka = false 
eureka.client.fetchRegistry = false

Основная причина проблемы заключалась не в том, чтобы установить для свойств реестра самостоятельной регистрации/поиска значение false, а в том, чтобы изменить/указать правильное свойство serviceUrl.

Добавил следующие строки в application.properties, и теперь мой сервер Eureka не указывает на порт Eureka по умолчанию 8761 для зарегистрированного URL-адреса реплики.

eureka.client.serviceUrl.defaultZone: http://localhost:${server.port}/eureka/

Другие вопросы по теме