2017-08-09 5 views
1

私はSpringブートアプリケーションをドッキングし、Docker Swarmに展開します。私は私のアプリが公開するポートを公開していない場合はEurekaのアプリケーションは、Dockerコンテナがポートを公開するときにホスト名の代わりにIPを使用して登録します。

が、その後、ユーレカクライアントは、インスタンスのアドレスとホスト名を送信しhttp://ecf28bdd26c5:8080のような -

私は(ドッカーの--publishパラメータを使用して)ポートを公開する場合良いhttp://10.255.0.25:8080 - 悪い

eureka.instance.prefer-ip-address=falseを明示的に設定してもそうです。

Eurekaクライアントに実際にホスト名を使用させるにはどうすればよいですか? documentationから

:明示ホスト名eureka.instance.hostname=${SOME_VAR}を設定または特定のインターフェースを無視し

答えて

2

次の設定が「docker0」インターフェースおよび「のveth」で始まるすべてのインタフェースを無視します。

application.yml 
spring: 
    cloud: 
    inetutils: 
     ignoredInterfaces: 
     - docker0 
     - veth.* 

あなたはまた、正規表現のリストを使用してのみ指定されたネットワークアドレスを使用するように強制することができます。

application.yml 
spring: 
    cloud: 
    inetutils: 
     preferredNetworks: 
     - 192.168 
     - 10.0 
+0

スペンサー救助に、いつものように:)感謝を – Tomasz

関連する問題