@EnableSidecarアノテーションは、ドキュメンテーションに基づいてユーレカに登録したい非JVMアプリケーションのプロキシとして機能します。したがって、設定される設定は次のとおりです。Spring Cloudサイドカーが期待通りに動作しない
sidecar:
port: 81 <-- Port of the non-JVM application
health-uri: http://10.135.16.50:${sidecar.port}/api/health.php <-- URI of the non-JVM application's health endpoint
home-page-uri: http://10.135.16.50:${sidecar.port}/
「サイドカー」は起動して実行したら、私達はちょうどという名前を使用して、サービスレジストリを通じて非JVMのエンドポイントの1つを呼び出すことができるはずですユーレカに登録するための「サイドカー」アプリケーション。私たちの「サイドカー」アプリケーションはのようなエンドポイントとプロキシに「PHP-サイドカー」として、ユーレカでPHPアプリケーションを登録したのであれば、たとえば、:
http://10.135.16.50:81/api/microservice.php
その後、我々は、取得するには、次のエンドポイントを呼び出すことができるはずです
http://localhost:8080/php-sidecar/api/microservice.php
しかし、これは期待通りに動作していない非JVMアプリケーションに(「サイドカー」を想定「はlocalhost」とポート8080です)。上のURIを要求すると、サイドカーのプロパティの一部として定義されたhome-page-uriではなく、 "サイドカー"がホストURIを何らかの形でピックアップしているため、 "localhost:81"へのリクエストが実際に発行されます。
localhostを使用して非JVMアプリケーションをローカルで実行すると、すべて正常に動作しますが、現実的なユースケースではありません。
したがって、Spring Cloud(この特定のケースではZuul)に、ローカルホストURIではなく非JVMホームページを使用するように設定すると、私は何が欠けていますか?
ご協力いただきありがとうございます。