静的ファイルを備えたexpress
Webサーバーがあります。これをexpress-deployment
と呼びましょう。
私のingress-nginx
を使用して、自分のexpress-deployment
から静的ファイルを提供し、実際にExpressサーバーにアクセスすることはありません。
nginx
では、これはlocation
ディレクティブで行われ、ローカルでホストされているファイルを指定します。 locations-snippet
configMap
にingress-nginx
のオプションが表示されますが、別のコンテナー内のファイルをこのように指定する方法がよくわかりません。
これはingress-nginx
で可能ですか?もしそうなら、私はそれについてどうやって行きますか?または、これは、nginxコンテナーをExpressサーバーと一緒にホストする必要があるものですか? (そのために2つのnginxが必要になるのは奇妙に思えます)
理論的には、RWXモードのPVをExpressとIngressの両方にマウントし、nginx-ingressポッドにカスタム構成を提供することもできますが、それは避けてください。 Ingressコントローラーには1つの責任があります。クラスターで定義されたIngressルールを実装します。静的コンテンツを提供するには、それを実行するポッドが必要です。スタックで2番目のnginxを実行します。重要なのは、イングレスコントローラーを一般的なクラスター機能を提供するインフラストラクチャの一部として扱い、静的ファイルをある場所(または、Dockerイメージとしてバージョン管理/構築されている場合はコンテナー)から提供することは、実際にはアプリケーションの一部であることです。