2017-11-18 3 views
2

Systemd und Gunicorn erfordern eine wsgi Datei von einer Art als letztes arg zu ExecStart: http://docs.gunicorn.org/en/latest/deploy.html?highlight=ExecStart#systemdWie konfiguriert man ExecStart für Gunicorn ohne WSGI?

Mit Django, das in dem Hauptmodul war als wsgi.py:

ExecStart=/home/admin/django/bin/gunicorn --config /home/admin/src/gunicorn.py --bind unix:/tmp/api.sock myapp.wsgi 

aber diese Datei offensichtlich nicht existieren bei der Verwendung von Sanic und uvloop (ich glaube, das neue Protokoll heißt ASGI). Ich habe versucht, es für app.py Substitution die wenig überraschend nicht funktioniert hat:

ExecStart=/home/admin/sanic/bin/gunicorn --config /home/admin/src/gunicorn.py --bind unix:/tmp/api.sock myapp.app 

Wie soll dieser Parameter konfiguriert werden, wenn Sanic mit?

Antwort

0

Ich habe dies noch nicht selbst mit SyStend und Gunicorn bereitgestellt. Aber die documentation scheint ziemlich gut zu sein.

Um Sanic Anwendung mit Gunicorn ausführen können, müssen Sie den speziellen sanic.worker.GunicornWorker für Gunicorn Arbeiter-Klasse Argument verwenden:

gunicorn myapp:app --bind 0.0.0.0:1337 --worker-class sanic.worker.GunicornWorker 

im Auge, wie über dieses Damit :

ExecStart=/home/admin/sanic/bin/gunicorn --config /home/admin/src/gunicorn.py myapp:app --bind 0.0.0.0:1337 --worker-class sanic.worker.GunicornWorker 

ich denke, das große Stück Sie ist die GunicornWorker Arbeiter Klasse fehlen.

Verwandte Themen