Проблема в работе (колба +) оружейного кукурузы с помощью супервизора: модуль приложения не указан - PullRequest
1 голос
/ 20 сентября 2019

все.У меня возникла странная проблема при запуске gunicorn с супервизором для обслуживания колб.Прежде чем я начну заявлять о своей проблеме, просто хочу сказать, что я знаю о этом ТАК сообщении .Тем не менее, моя проблема заключалась в том, что я мог запускать gunicorn прямо на переднем плане для сервера приложения.Проблема возникла только тогда, когда я использовал супервизор.

Вот структура моего приложения для колб:

myproject/
|---webapp/
|   |---__init__.py    # create_app function is here
|   |--- ...           # other files in webapp
|---wsgi.py
|---manage.py          
|---venv               # gunicorn is in venv/bin

Файл wsgi.py выглядит следующим образом

from webapp import create_app

app = create_app()

if __name__ == "__main__":
    app.run()

Находясь в каталоге myproject, я могузапустите приложение, запустив

$ venv/bin/gunicorn -w 4 wsgi:app

Затем я создал каталог webapp.conf в /etc/supervisor/conf.d/ следующим образом.

[program:webapp]
directory=/home/<my username>/projects/myproject
command=/home/<my username>/projects/myproject/venv/bin/gunicorn -w 4 wsgi:app
user=<my username>
autostart=true
autorestart=true
redirect_stderr=true
stdout_logfile=<some path>
stderr_logfile=<some path>

Когда я перезагрузил свой supervisor, журнал stdoutВ файле сказано:

usage: gunicorn [OPTIONS] [APP_MODULE] gunicorn: error: No application module specified.

Мой вопрос: почему я получаю ошибку здесь, если я не получаю ошибку при непосредственном запуске gunicorn?В чем разница?

Кстати, я тогда попытался использовать systemd для запуска gunicorn после этого поста , и systemd может нормально запустить службу gunicorn.

Есть идеи, что я сделал не так с supervisor?Большое спасибо.

...