Django アプリケーションのベースとしてどの AMI を使用すればよいですか?

Django アプリケーションのベースとしてどの AMI を使用すればよいですか?

Amazon Web Services 上で Django アプリケーションの開発を始めています。

Django にサービスを提供するインスタンスを構築したいと考えています。これまでは共有ホスト (WebFaction) しか使用したことがなく、このようなことについてはあまり経験がありません。

それで、どの AMI をベースとして使用すればよいのか疑問に思っています。Apache などの特定のものがプリインストールされている Ubuntu AMI が必要だと思いますが?

1 つの小さな点: 同じインスタンスから複数の異なる Django プロジェクトを提供する予定です。現在、開発マシンでは virtualenv を使用してさまざまなプロジェクトを分離していますが、EC2 でも同じことを行う予定です。

ありがとう!

答え1

EC2 プラットフォームで Django アプリケーションのセットを構築したいとおっしゃっていますが、実際に構築したいのは Django アプリケーション ファクトリーではないでしょうか。つまり、Django の要件 (apache、postgres、git、sentry など) を取得して実行中の Web サーバーを構築するスクリプトのセットが必要です。その後、それを終了し、再度構築します。

これを望む理由は次のとおりです:

  • 再現性
  • テスト
  • 異なるインスタンスアーキテクチャへの移行

最後の理由は、最初の質問に対する答えですが、アプリケーション自体の構築の一環としてアプリケーション ファクトリーを構築する最も重要な理由ではありません。そうすれば、事前に余分な労力を費やしたためアップグレードが可能であることがわかり、最小限のプラットフォームでアプリを実行する自信が得られます。

Ubuntu を EC2 サーバー プラットフォームとして使用することを検討している場合、クラウド インスタンスの作成に役立つサポートがいくつかあります。

https://help.ubuntu.com/community/CloudInit

答え2

小さなインスタンス、あるいはマイクロ インスタンスでも問題なさそうです (ただし、最初は同じインスタンスでデータベース サーバーを実行する可能性が高い場合は特に、マイクロ インスタンスで本番サイトを危険にさらしたくはありません)。

関連情報