Я следовал этому учебному руководству при установке Фляги с nginx + uwsgi.
Я создал новомодный сценарий в /etc/init/flask-uwsgi.conf
:
start on [2345]
stop on [06]
pre-start script
mkdir -p /var/run/flask-uwsgi
chown www-data:www-data /var/run/flask-uwsgi
end script
script
cd /var/flask-uwsgi
exec uwsgi --ini /etc/flask-uwsgi/flask-uwsgi.ini
end script
Для работы, каталог /var/run/flask-uwsgi
должен быть создан с его набором владельца к www-data
.
Если я делаю "жесткую" перезагрузку, этот сценарий (и сервис) не запускается автоматически.
Если я работаю service flask-uwsgi start
вручную, это хорошо работает.
Я пытался добавить setuid root
к этому сценарию, думая, что Вам нужны полномочия пользователя root создать каталоги в /var/run
, но это не помогло.
Мой синтаксис кажется прекрасным:
init-checkconf /etc/init/flask-uwsgi.conf
File /etc/init/flask-uwsgi.conf: syntax ok
И, файл журнала /var/log/upstart/flask-uwsgi.log
пусто.
Что я пропускаю?
Это была проблема с остановкой на
части сценария выскочки.
Исправлено:
start on [2345]
stop on [!2345]
pre-start script
mkdir -p /var/run/flask-uwsgi
chown www-data:www-data /var/run/flask-uwsgi
end script
script
cd /var/flask-uwsgi
exec uwsgi --ini /etc/flask-uwsgi/flask-uwsgi.ini
end script