2016-06-28 15 views
0

Ich versuche, meinen Flasgserver beim Start mit Hilfe von Supervisor zu starten. Aber ich bekomme diese Fehlermeldung:Start Flasher Server @ Start mit Supervisor: FATAL Exit zu schnell

python_auutostart    FATAL  Exited too quickly (process log may have details) 

Dies ist der Eintrag in meinem Logfile:

Traceback (most recent call last): 
    File "run.py", line 2, in <module> 
    from app import app 
    File "/home/flaskserver/app/__init__.py", line 1, in <module> 
    from flask import Flask 
ImportError: No module named flask 

Das ist mein Conf ist:

[program:python_auutostart] 
user=nobody 
command = python run.py 
directory = /home/flaskserver/ 
autostart = true 
autorestart = true 
stderr_logfile=/etc/supervisor/long.err.log 
stdout_logfile=/etc/supervisor/long.out.log 

ich meine flaskserver ohne Probleme starten können, wenn Ich laufe ./run.py, aber ich bekomme es nicht mit Supervisor laufen. Ich verstehe nicht, warum ich den ImportError bekomme, den ich gepostet habe. Vielleicht kann mich jemand hier auf mein Problem hinweisen.

+0

Mai oder du musst in der virtualenv sein, wo der Kolben installiert ist – Chathuranga

+0

Ich habe die .conf-Datei in meine virutalenv verschoben und ich bekomme immer noch den gleichen Fehler – IIIIIIIIIIIIIIIIIIIIII

+1

Sie müssen den Python aus dem virtualenv verwenden. Also benutze so etwas wie '/ path/to/virtualenv/env/bin/python' – syntonym

Antwort

2

Das Python, das Sie verwenden, ist das Standardsystem Python (Sie können überprüfen, dass which python, die etwas wie /usr/bin/python oder wo auch immer Ihr System Python anzeigen sollte). Dies hat (standardmäßig) keinen Zugriff auf Bibliotheken, die in einer virtuellen Umgebung installiert sind. Stattdessen sollten Sie den Python verwenden, der spezifisch für den virtualenv ist. Sie können das tun, indem Sie explizit den Python aufrufen, der sich in /path/to/virtualenv/env/bin/python befinden sollte. Sie können das überprüfen, indem Sie den virtualenv und which python aktivieren, die den Pfad zum Python des virtualenv ausgeben sollen.