はじめに アプリケーションをコンテナ化してAWSのFargateで運用する場合、Django+Nginxの場合だとスタティックファイルの共有が必要となるが、仕組みをよく理解していなくて混乱していた。 後から考えればそういうことかと思えたけどもそのあたりを整理してみた。 やりたいこと ざっくり構成図を描くとこんな感じ。本当はRDSとかECRとか使っているが省略。 2つのアベイラビリティゾーンにパブリックサブネットを配置してFargateをロードバランシングして運用。 1つのタスク内にDjangoとNginxの2コンテナを置く。 DjangoとNginx間でファイル(実際はディレクトリ)を共有する必要があり、左右のFargate間はロードバランシングしているため共有が必要となる。 結論からいうと タスク内のコンテナ間での共有 → バインドマウント サービス内のロードバランシングしているタスク間