Welches AMI sollte ich als Basis für eine Django-Anwendung verwenden?

Welches AMI sollte ich als Basis für eine Django-Anwendung verwenden?

Ich beginne mit der Entwicklung einer Django-Anwendung auf den Web Services von Amazon.

Ich möchte eine Instanz erstellen, die Django bedient. Ich habe nicht viel Erfahrung mit solchen Dingen, da ich zuvor nur einen Shared Host (WebFaction) verwendet habe.

Ich frage mich also, welches AMI ich als Basis verwenden soll. Ich gehe davon aus, dass ich ein Ubuntu-AMI möchte, möglicherweise mit bestimmten Dingen wie Apache vorinstalliert?

Ein kleiner Punkt: Ich plane, mehrere verschiedene Django-Projekte von derselben Instanz aus zu bedienen. Ich verwende derzeit virtualenv auf meiner Entwicklungsmaschine, um die verschiedenen Projekte zu trennen. Ich gehe davon aus, dass ich auf EC2 dasselbe tun werde.

Danke!

Antwort1

Sie haben angegeben, dass Sie eine Reihe von Django-Anwendungen auf einer EC2-Plattform erstellen möchten, aber ich möchte vorschlagen, dass Sie eigentlich eine Django-Anwendungsfabrik erstellen möchten. Das heißt: Sie möchten eine Reihe von Skripten, die Ihre Django-Anforderungen (Apache, Postgres, Git, Sentry usw.) erfüllen und einen laufenden Webserver erstellen. Beenden Sie ihn dann. Erstellen Sie ihn dann erneut.

Aus diesem Grund möchten Sie dies:

  • Wiederholbarkeit
  • Testen
  • Umstellung auf andere Instanzarchitekturen

Der letzte Grund beantwortet Ihre ursprüngliche Frage, ist aber nicht der wichtigste Grund, eine Anwendungsfabrik als Teil der Anwendungserstellung selbst zu erstellen. Sie können Ihre Apps dann auf einer minimalen Plattform ausführen und wissen, dass Sie Upgrades durchführen können, da Sie im Vorfeld zusätzliche Anstrengungen unternommen haben.

Wenn Sie Ubuntu als Ihre EC2-Serverplattform verwenden möchten, bietet es einige nützliche Unterstützung für die Erstellung von Cloud-Instanzen:

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

Antwort2

Hört sich an, als ob eine kleine Instanz oder vielleicht sogar eine Mikroinstanz für Sie ausreichen würde (obwohl ich keine Produktionssites auf einer Mikroinstanz riskieren möchte, insbesondere wenn Sie höchstwahrscheinlich anfangs einen Datenbankserver auf derselben Instanz ausführen werden).

verwandte Informationen