2012-03-25 7 views
7

Ich benutze einen Windows-Rechner und habe ein Django-Projekt, das ich erfolgreich auf Heroku bereitgestellt habe, allerdings unter Verwendung des Entwicklungsservers. Um einen Produktionsserver zu verwenden, scheint Heroku "Gunicorn" zu benötigen, das nicht unter Windows läuft.Bereitstellung von Django auf Heroku mit einem Windows-Rechner (Produktionsserver NOT-Entwicklungsserver)

Dies ist nicht gut zum Testen lokal vor der Bereitstellung. Kennt jemand einen Weg, um dies zu umgehen? Vielleicht eine Möglichkeit, einen anderen Server auf Heroku zu verwenden?

Antwort

4

ich eine Lösung gefunden, die helfen können, wenn sie Heroku mit einem Windows-Rechner einsetzen. Hier ist, was ich tue:

Verwenden Sie den Entwicklungs-Server lokal mit:

python manage.py runserver 

installieren und fügen 'Gunicorn' auf Ihre installierten Anwendungen in settings.py.

Fügen Sie eine Prozessdatei im Stammverzeichnis hinzu, die heroku anweist, den Gunicorn-Server zu verwenden. Dies ist eine Datei ‚procfile‘ mit dem folgenden Code genannt:

web: python kalail/manage.py run_gunicorn --bind=0.0.0.0:$PORT 

diese Weise können Sie die Entwicklungsserver-Test, während Heroku den Gunicorn Server verwendet. Stellen Sie sicher, dass Sie danach statische Dateien (css/js/imgs) bereitstellen, da nur der Entwicklungsserver statische Dateien automatisch bereitstellt und der Gunicorn-Server dafür konfiguriert werden muss.

1

Sie können die Entwicklungs-Server lokal recht einfach auszuführen:

> python manage.py runserver 
+2

Vielleicht war ich nicht klar genug. Ich kann den Entwicklungsserver leicht genug laufen lassen, es benutzt einen Produktionsserver lokal unter Windows, damit ich testen kann, bevor ich zu Heroku dränge. Dies ist ein Problem, da Gunicorn nicht unter Windows läuft. – Kalail

0

Alles, was Sie tun müssen, ist Pfad angeben Skript aus Stammverzeichnis wsgi:

$web: gunicorn hellodjango.wsgi