2016-04-04 6 views
1

Ich versuche Gunicorn mit Systemd für mein Django-Projekt einzurichten, aber es lädt nicht eine andere Bibliothek meines Projekts.Django + gunicorn + systemd Probleme

File "/home/ubuntu/venv/lib/python3.4/importlib/__init__.py", line 109, in import_module 
gunicorn[6043]: return _bootstrap._gcd_import(name[level:], package, level) 
gunicorn[6043]: ImportError: No module named 'templates' 

Vorlagen sind ein weiterer Teil des Projekts, der sich in einem separaten Verzeichnis befindet. Ich würde den gleichen Fehler bekommen, wenn ich versuche, die Seite ohne /home/ubuntu/templates/ in meinem $PYTHONPATH auszuführen, habe ich den Pythonpfad in meiner Systemd Unit-Datei hinzugefügt, aber es hat nichts getan.

ich kann erfolgreich laufen gunicorn mit diesem Befehl:

/home/ubuntu/venv/bin/gunicorn --pid /tmp/pid-gunicorn site_gfa.wsgi:application -b 0.0.0.0:8083

Aber ich nicht in systemd

Systemd Einheit Datei

[Unit] 
Description="Site" 
After=network.target 

[Service] 
PIDFile=/tmp/pid-gunicorn 
User=ubuntu 
Group=users 
Environment=PYTHONPATH='/home/ubuntu/templates/' 
WorkingDirectory=/home/ubuntu/gfa-apps/ 
ExecStart=/home/ubuntu/venv/bin/gunicorn --pid /tmp/pid-gunicorn site_gfa.wsgi:application -b 0.0.0.0:8083 
PrivateTmp=true 
Type=forking 

[Install] 
WantedBy=multi-user.target 

ich CentOS7 mit Python 3.4 renne und Gunicorn 19.4.5 Vielen Dank im Voraus!

Antwort

2

Gelöst, sollte die Umgebung var in systemd Unit-Datei keine Anführungszeichen um es haben.

[Unit] 
Description="Site" 
After=network.target 

[Service] 
PIDFile=/tmp/pid-gunicorn 
User=ubuntu 
Group=users 
Environment=PYTHONPATH=/home/ubuntu/templates/ 
WorkingDirectory=/home/ubuntu/gfa-apps/ 
ExecStart=/home/ubuntu/venv/bin/gunicorn --pid /tmp/pid-gunicorn site_gfa.wsgi:application -b 0.0.0.0:8083 
PrivateTmp=true 
Type=forking 

[Install] 
WantedBy=multi-user.target