djangoで制作したサイトをApp Runnerでデプロイしたが、画像だけ投稿できない。

0

djangoで開発した簡単なメモサイト(画像を伴う投稿が追加、削除できる)を制作しました。データーベースにMySQLを使用。RDSとS3を紐付けてDockerでコンテナ化しました。ローカル環境では問題なく動作します。問題はAppRunnerでデプロイしたサイトのほうなのですが。投稿の表示、削除は可能でした。また画像を添付しないテキストだけの投稿は可能です。ところが画像を添付すると長いローディングに入りタイムアウトしてしまい、投稿の追加ができない状況になっています。時間をかけて調べていますが解決できていません。考えられる原因を教えてくださるとうれしいです。 現状から以下のことには成功していると考えています。

  1. AppRunner自体の設定
  2. データベース接続の設定(データベースのホスト、ユーザー名、パスワード等)とAWS RDSの設定(セキュリティグループの設定など)
  3. S3バケットへのアクセス許可(AWS IAM ユーザーの設定など)とS3設定
  4. VPCおよびセキュリティグループの設定
1 Antwort
1
Akzeptierte Antwort

おそらくですがS3への通信がVPCを経由したものになっている可能性が高いです。
なのでゲートウェイ型のVPCエンドポイントをRDSが起動しているVPCに作成してみてください。
https://aws.amazon.com/jp/blogs/news/new-for-app-runner-vpc-support/

VPC に接続すると、AppRunner サービスからすべてのアウトバウンドトラフィックが VPC ルーティングルールに基づいてルーティングされます。NAT ゲートウェイへのルートで許可されない限り、サービスはパブリックインターネット (AWS API を含む) にアクセスできません。また、Amazon Simple Storage Service (Amazon S3)や Amazon DynamoDB などの AWS API に接続するように VPC エンドポイントを設定して、NAT トラフィックを回避することもできます。

S3ゲートウェイ型VPCエンドポイントの作成は以下のドキュメントを参考に設定してみてください。
https://docs.aws.amazon.com/ja_jp/vpc/latest/privatelink/vpc-endpoints-s3.html

profile picture
EXPERTE
beantwortet vor 10 Monaten
  • エンドポイントを設定したら投稿できるようになりました!本当に助かりました! Amazonのサポート担当の方が2日以上かかっても解決していなかったのに、この少ない情報で一発で原因を突き止めてしまうなんて本当にすごいです。。。ありがとうございます!

Du bist nicht angemeldet. Anmelden um eine Antwort zu veröffentlichen.

Eine gute Antwort beantwortet die Frage klar, gibt konstruktives Feedback und fördert die berufliche Weiterentwicklung des Fragenstellers.

Richtlinien für die Beantwortung von Fragen