Почему супервизор завершает работу с ошибкой ENOENT? - PullRequest
0 голосов
/ 05 мая 2019

Я пытаюсь использовать супервизор для контроля / управления моим приложением с флягами, обслуживаемым nginx и gunicorn. Когда я запускаю перезагрузку sudo supervisorctl, я получаю страницу неверного шлюза 502. Мой журнал ошибок гласит: «Не удалось chdir to / home / beng / Мой старший проект: руководитель ENOENT: дочерний процесс не порожден»

Я пробовал несколько различных настроек в файле seniorproject.conf, который содержит процесс, который я хочу запустить supervisor, но в итоге я получаю ту же ошибку, упомянутую выше.

Файл seniorproject.conf (включен в файл supervisord.conf):

[program:seniorproject]
directory="/home/beng/My Senior Project"
command="/home/beng/My Senior Project/venv/bin/gunicorn" -w 3 run:app
user=beng
autostart=true
autorestart=true
stopasgroup=true
killasgroup=true
stderr_logfile=/var/log/seniorproject/seniorproject.err.log
stdout_logfile=/var/log/seniorproject/seniorproject.out.log

Файл supervisord.conf:

; supervisor config file

[unix_http_server]
file=/var/run/supervisor.sock   ; (the path to the socket file)
chmod=0700                       ; sockef file mode (default 0700)

[supervisord]
logfile=/var/log/supervisor/supervisord.log ; (main log file;default $CWD/supervisord.log)
pidfile=/var/run/supervisord.pid ; (supervisord pidfile;default supervisord.pid)
childlogdir=/var/log/supervisor            ; ('AUTO' child log dir, default $TEMP)

; the below section must remain in the config file for RPC
; (supervisorctl/web interface) to work, additional interfaces may be
; added by defining them in separate rpcinterface: sections
[rpcinterface:supervisor]
supervisor.rpcinterface_factory = supervisor.rpcinterface:make_main_rpcinterface

[supervisorctl]
serverurl=unix:///var/run/supervisor.sock ; use a unix:// URL  for a unix socket

; The [include] section can just contain the "files" setting.  This
; setting can list multiple files (separated by whitespace or
; newlines).  It can also contain wildcards.  The filenames are
; interpreted as relative to this file.  Included files *cannot*
; include files themselves.

[include]
files = /etc/supervisor/conf.d/*.conf

Я хочу, чтобы супервизор успешно выполнил команду gunicorn, чтобы посещение моего IP-адреса привело к успешному запуску моего сайта, даже если мой терминал закрыт.

...