1

ich einen Frühling Boot-Micro auf einen Spring-Konfigurationsdienst verbindet habe die Config zu bekommen, aber es scheint, kann der Dienst nicht vollständig, nachdem der Config Server und läuft es starten, sonst wird es nie in der Lage sein Verbindung wiederLösen Abhängigkeiten von Docker-komponieren

Hier ist der Fehler, den ich in den Dienst der Konsole zu sehen, wenn ich die docker-compose-Datei ausführen (?):

2016-04-07 14: 25: 51,305 WARN 1 --- [main ] cccConfigServicePropertySourceLocator: Könnte PropertySource nicht gefunden werden: I/O-Fehler fürauf GET-Anfrage 210 "http://configserver:8888/myservice/default": Verbindung verweigert; verschachtelte Ausnahme ist java.net.ConnectException: Verbindung

Hier ist meine Docker-compose Datei verweigert:

discovery: 
    image:discovery-service 
    ports: 
    - "8761:8761" 
configserver: 
    image:config-service 
    ports: 
    - "8888:8888" 
    links: 
    - discovery 
myservice: 
    image:my-service 
    ports: 
    - "9006:9006" 
    links: 
    - discovery 
    - configserver 

Und das ist der Service bootstrap.yml config:

spring: 
    application: 
    name: myservice 
    cloud: 
    enabled: true 
    config: 
     uri: http://configserver:8888 
encrypt: 
    failOnError: false 

Einmal Beide Dienste laufen und registriert auf Eureka (Entdeckung), ich versuche, /refresh auf myservice zu rufen, aber es schlägt fehl und gibt den gleichen Fehler zurück.

Wenn ich die Docker-Instanz neu starte, stellt sie ohne Probleme eine Verbindung her.

Heißt das, ich muss die Config-Server weiterlaufen kontinuierlich der Lage sein, das zu tun?

Antwort

1

Sie müssen die Client-Anwendung konfigurieren, robuster zu sein, wenn der Config-Server noch nicht bereit ist, wenn es beginnt. Es gibt einen Abschnitt in der user guide. TL; DR schließen Federwiederholung ein und setzen spring.cloud.config.failFast=true.

+0

den Sinn macht, aber ich verstehe immer noch nicht, warum es keine Verbindung, nachdem die Config Server ich es MyService neu starten muß, um arbeiten zu lassen, sollte es nicht abholen, sobald es nach oben zur Verfügung und warum tun ist, und Laufen? –

+0

Vielleicht haben Sie das Benutzerhandbuch nicht sorgfältig genug gelesen. Es wird sich schließlich verbinden, solange die Wiederholungsparameter ausreichend liberal sind. –