Как я могу запустить uWsgi как службу в CentOs?

Я тороплюсь, я могу узнать, как это сделать, но мне нужна помощь, чтобы добиться этого, не теряя слишком много времени. В настоящее время я запускаю экземпляр uWsgi вместе с моим ini-файлом:

uwsgi --ini /home/myonlinesite/uwsgi.ini --pidfile /var/run/uwsgi_serv.pid

а затем остановить:

uwsgi --stop  /var/run/uwsgi_serv.pid.

Кстати, у меня есть этот код в файле инициализации uwsgi в моем файле /etc/init.d/uwsgi. поэтому, когда я запускаю /etc/init.d/uwsgi start, он выполняет файл конфигурации ini, а когда я запускаю /etc/init.d/uwsgi stop, он останавливает идентификатор процесса uwsgi.

Проблема в том, что когда я запускаю службу uWsgi, она работает нормально и регистрирует каждый http-запрос, любую отладочную печать и т. д., но когда я закрываю замазку, где я запускаю свой Vps, она убивает весь процесс uWsgi и закрывает отображение сайта. .

Я не знаю, нужно ли мне касаться только файла pid или что мне нужно сделать, чтобы оставить процесс uWsgi выполняющимся, и я могу закрыть замазку.

Заранее спасибо.


person Uuid    schedule 13.12.2012    source источник


Ответы (3)


Использование nohup для запуска процесса uWsgi должно решить вашу проблему с остановкой процесса при выходе из системы.

Учебник

person Joe Day    schedule 13.12.2012
comment
Также здесь подойдет терминальный мультиплексор, такой как tmux или screen. - person MGP; 01.04.2014
comment
Гораздо лучше создать файл конфигурации в /etc/init/app.conf с уровнями запуска и использовать его как sudo initctl start | перезапустить | остановите приложение или создайте службу в /etc/init.d/app с уровнями запуска chkconfig и всеми операциями. - person Shashank; 21.01.2016

Если вы устанавливаете параметры в командной строке, добавьте к команде флаг -d file.log (-d означает демонизация):

uwsgi --ini /home/myonlinesite/uwsgi.ini --pidfile /var/run/uwsgi_serv.pid -d file.log

Если вы устанавливаете параметры в файле конфигурации, добавьте в него следующую строку:

daemonize = /absolute/path/to/file.log

В обоих случаях uWsgi будет работать в фоновом режиме и регистрировать все в файле.log. Учитывая эти варианты, нет необходимости использовать nohup et al.

person NucFlash    schedule 04.03.2015
comment
Это должен быть принятый ответ. Я следовал этому решению, и оно работает безупречно - person Barranka; 21.05.2018

Обязательно добавьте

демон = файл журнала

к вашей конфигурации

person roberto    schedule 14.12.2012