Unit gunicorn.service konnte nicht geladen werden: Keine solche Datei oder kein solches Verzeichnis

7

Beim Einrichten eines neuen Ubuntu 15.10 x64-Servers, auf dem Nginx, Gunicorn und Django als Sudo-Benutzer ausgeführt werden. Ich erhalte eine Fehlermeldung, wenn ich Folgendes ausführe sudo service gunicorn start:

Failed to start gunicorn.service: 
Unit gunicorn.service failed to load: No such file or directory.

Von einer aktiven virtuellen Umgebung aus kann ich Gunicorn starten mit:

gunicorn --bind 0.0.0.0:8000 myproject.wsgi:application

Über Ideen zur Lösung dieses Problems würde ich mich sehr freuen, da ich einige Vorschläge aus verschiedenen Websuchen ausprobiert habe, in denen ähnliche Probleme ohne Glück erwähnt wurden.

Meine Gunicorn-Datei befindet sich in /etc/init/gunicorn.confund ist wie folgt konfiguriert:

description "Gunicorn application server handling myproject"

start on runlevel [2345]
stop on runlevel [!2345]

respawn
setuid myuser
setgid www-data
chdir /home/myuser/myproject

exec myprojectenv/bin/gunicorn --workers 3 --bind unix:/home/myuser/myproject/myproject.sock myproject.wsgi:application
GlenS
quelle
1
/etc/init/gunicorn.confbefindet sich in der Upstart-Konfiguration und ist für 14.04 und 12.04 geeignet. 15.10 verwendet systemd, daher müssen Sie eine systemd-Einheit schreiben. Siehe wiki.ubuntu.com/SystemdForUpstartUsers
muru
Vielen Dank für die Unterstützung, das hat super funktioniert. Ich habe die Datei "/etc/systemd/system/gunicorn.service" hinzugefügt und dies funktioniert hervorragend.
GlenS
Ausgezeichnet! Können Sie die von Ihnen verwendete Gerätedatei für zukünftige Besucher veröffentlichen?
Muru

Antworten:

3

Sie müssen erstellen gunicorn.servicein /etc/systemd/system. Als nächstes diesen Code hinzuzufügen und zu ersetzen user, myprojectund myprojectenventsprechend.

[Unit]
Description=gunicorn daemon
After=network.target

[Service]
User=user
Group=nginx
WorkingDirectory=/home/user/myproject
ExecStart=/home/user/myproject/myprojectenv/bin/gunicorn --workers 3 --bind unix:/home/user/myproject/myproject.sock myproject.wsgi:application

[Install]
WantedBy=multi-user.target
Gaurav
quelle
Hallo, ich kann keine Datei zur / etc / systemd / system hinzufügen
Roel