Ubuntu 16.04 не в состоянии запустить сценарий запуска, который работает в Ubuntu 14.04

Я знаю, что новая Ubuntu больше в пользу systemd чем upstart, но когда я иммигрирую мой сайт (python+nginx+uwsgi) из Ubuntu 14.04 не удалось запустить скрипт upstart во время фазы загрузки системы.

Скрипт upstart такой же, как и в документах uwsgi:

# simple uWSGI script

description "uwsgi tiny instance"
start on runlevel [2345]
stop on runlevel [06]

respawn

exec uwsgi --master --processes 4 --die-on-term --socket :3031 --wsgi-file /var/www/myapp.wsgi

Я уверен, что сервер nginx настроен правильно, и команда (как следует) в сценарии upstart может нормально обслуживать веб-сайт в оболочке (я могу открыть веб-страницы из браузера).

uwsgi --master --processes 4 --die-on-term --socket :3031 --wsgi-file /var/www/myapp.wsgi

Мой вопрос заключается в том, как заставить скрипт upstart работать должным образом в Ubuntu 16.04.

1 ответ

Я хотел бы создать системный сервис для /etc/systemd/system/uwsgi.service, И отключить скрипт выскочки.

Может быть, вам нужно немного подправить скрипт сервиса, например, полный путь, user а также After:

[Unit]
Description=uwsgi
After=network.target

[Service]
PIDFile=/run/uwsgi.pid
ExecStart=/usr/bin/uwsgi --master --processes 4 --die-on-term --socket :3031 --wsgi-file /var/www/myapp.wsgi
User=www-data
ExecReload=/bin/kill -s HUP $MAINPID
ExecStop=/bin/kill -s QUIT $MAINPID
PrivateTmp=true

[Install]
WantedBy=multi-user.target
Другие вопросы по тегам