Spring Cloud Discrovery Eureka - Mengembalikan Localhost sebagai ganti nama host lokasinya

Saya menggunakan Spring Cloud Eureka Server dan Config Server, sebagai Discovery First, dan masalah saya adalah:

Ketika registri layanan itu sendiri di server eureka, URL Server Konfigurasi yang dikembalikannya adalah http://LOCALHOST:8888 alih-alih http://{HOST_NAME}}:8888 dan semua layanan lain yang dihosting di server lain tidak bisa temukan konfigurasinya.

Baris log:

Mengambil konfigurasi dari server di: http://localhost:8888

Apakah ada konfigurasi yang dapat saya lakukan untuk memperbaikinya?

Application.yml server konfigurasinya seperti itu:

server:
  port: 8888

spring:
  application:
    name: configserver
  profiles:
    active: native
  cloud:
    config:
      server:
        native:
          searchLocations: /opt/config_dir

eureka:
  client:
    serviceUrl:
      defaultZone: http://10.111.22.33:8761/eureka,http://10.111.33.44:8761/eureka

Klien konfigurasi bootstrap.yml seperti ini:

spring:
  application:
    name: show-service
  profiles:
    active: dev
  cloud:
    discovery:
      enabled: true

eureka:
  client:
    serviceUrl:
      defaultZone: http://10.111.22.33:8761/eureka,http://10.111.33.44:8761/eureka

person Caio Menezes    schedule 20.06.2018    source sumber
comment
Saya tidak tahu, seperti apa konfigurasi Anda?   -  person spencergibb    schedule 20.06.2018
comment
Saya menambahkan konfigurasi   -  person Caio Menezes    schedule 20.06.2018
comment
Versi mana yang Anda gunakan?   -  person Indraneel Bende    schedule 21.06.2018
comment
Defaultnya adalah localhost:8888. Entah kenapa saya merasa tidak bisa mendapatkan url dari eureka.   -  person Indraneel Bende    schedule 21.06.2018
comment
Saya menggunakan Spring cloud Fincley.RC2   -  person Caio Menezes    schedule 21.06.2018
comment
apakah mungkin bagi Anda untuk memposting sampel di github?   -  person Indraneel Bende    schedule 22.06.2018
comment
Juga, bisakah Anda mengubah port Server konfigurasi Anda. Jalankan di port no 8889 dan lihat apakah localhost:8889 diambil?   -  person Indraneel Bende    schedule 22.06.2018


Jawaban (2)


Secara default Discovery First Bootstrap dinonaktifkan. Anda kehilangan beberapa properti di aplikasi klien konfigurasi - untuk mengaktifkan penggunaan penemuan guna mencari URL server konfigurasi dan nama server konfigurasi Anda (id layanan).

spring:
  cloud:
    config:
      discovery:
       enabled: true
       service-id: configserver

Selengkapnya: https://cloud.spring.io/spring-cloud-config/multi/multi__spring_cloud_config_client.html#discovery-first-bootstrap

person nmyk    schedule 22.06.2018
comment
Terima kasih banyak! Saya mengikuti panduan lama dan menggunakan spring.cloud.discovery.enabled=true sebagai gantinya, yang tidak berfungsi di springboot yang lebih baru - person John the Traveler; 21.04.2021

saya memecahkan masalah ini dengan menerapkan proyek saya
mvn deploy
semoga ini menyelesaikan masalah Anda

person Hanz    schedule 24.04.2019