ローカルで実行すると、春の起動アプリケーションでは、default
のプロファイルで実行されます。したがって、Springは実行時にポートやその他の設定を活用します。
クラウドにプッシュすると、春のブートアプリケーションはcloud
のプロファイルで実行されます。 cloud
プロファイルでは、ポート設定はクラウドによって指定され、指定した設定は無視されます。
PCFでは、Diegoセルがすべてのアプリケーションインスタンスをホストします。 Diegoセルには、ホスティングするアプリケーション用の独自のCIDRブロックがあります。したがって、あなたのアプリケーションインスタンスはその範囲からIPを取得します。そしてあなたはそのIPでアプリにアクセスすることはできません。
しかし、DiegoセルのVMは、実行中のネットワークのCIDR範囲のIPを持っています。また、DiegoセルはNAT-ingを使用して、あなたのアプリケーションipをDiegoセルVMのポートにマップします。それがトラフィックがあなたのアプリにどのようにルーティングされるかです。
ご覧のとおり、PCFのDiegoセルは、指定したポートに依存することはできません。代わりに、可能な限りアプリケーションを実行し、使用可能なポートにNATを実行します。
Diego Reference Architectureをご覧ください。
第2の質問については、Cloud FoundryのGo-Routersがアプリインスタンスにリクエストをルーティングします。デフォルトでは、Go-Routersではhttp/httpsトラフィックのみが有効になっています。 Go-RoutersでTCPルーティングを有効にすることができます。これはPCF 1.9で追加されたと私は信じている。 こちらはdocumentationです。