ECS(Fargate)でデプロイした後、同じタスク内のコンテナ間でのやりとりができない

0

ECSの一つのタスク内に二つのコンテナを作成しています。一つはクライアントサイドをReactを使用してNginxで起動させて、もう一つはAPIサーバをExpressで起動させています。またExpressはRDSと連携させています。 デプロイ自体は成功していて、ExpressのコンテナからAPIを動かせました。コンテナのログにはエラーは出ていません。 しかしブラウザのコンソールを見るとクライアントサイドからAPIのリクエストを送っているのにエラーになってしまっています。 調べたところ、コンテナ間の通信をするためにはホストをlocalhostか127.0.0.1を指定するようにと記載があったため、.envファイルのホストを修正して立ち上げているのですが、localhostも127.0.0.1もどちらもブラウザからはエラーになってしまいます。 セキュリティグループの設定ではインバウンドルールに二つのコンテナのポートを追加して、0.0.0.0/0を設定しています。 ご助言いただけると助かります。

ishi
preguntada hace 8 meses1040 visualizaciones
3 Respuestas
0
Respuesta aceptada

フロントコンテナで使用しているNginxの設定ファイルなどでプロキシ設定を行ってバックエンドのExpress (APIコンテナ) にアクセスしているという認識で合っていますか?
その場合はNginxの設定ファイルのプロキシ設定も「localhost:ポート番号」に投げるように設定しなおす必要があると思います。

profile picture
EXPERTO
respondido hace 8 meses
0

ご助言いただきまして、ありがとうございました。 ReactのDockerfileを作成時にReactアプリで作成したアプリだけをECRに載せると、うまくECSでデプロイできなかったため、Nginxを追加したところ、無事にブラウザで起動できました。 ただしNginxの設定などはしていなかったので、プロキシ設定が必要なのですね。勉強になります。 調べて設定を行いたいと思います。

ishi
respondido hace 8 meses
0

リバースプロキシについて調べて、Nginxの設定ファイルを調整したところ、無事にコンテナ間のやりとりができました。大変助かりました。ありがとうございました!

ishi
respondido hace 8 meses

No has iniciado sesión. Iniciar sesión para publicar una respuesta.

Una buena respuesta responde claramente a la pregunta, proporciona comentarios constructivos y fomenta el crecimiento profesional en la persona que hace la pregunta.

Pautas para responder preguntas