Настройка nginx и супервизора в Ubuntu

Я использую настройку django-gunicorn-nginx, следуя этому руководству: http://ijcdigital.com/blog/django-gunicorn-and-nginx-setup/ Установка Upto nginx работает. Затем я установил супервизор, настроил его, а затем перезагрузил свой сервер и проверил, он показывает 502 плохих шлюза. Я использую Ubuntu 12.04 LTS

/etc/supervisor/conf.d/qlimp.conf

[program: qlimp] directory = /home/nirmal/project/qlimp/qlimp.sh user = nirmal command = /home/nirmal/project/qlimp/qlimp.sh stdout_logfile = /path/to/supervisor/log/file/logfile.log stderr_logfile = /path/to/supervisor/log/file/error-logfile.log 

Затем я перезапустил супервизор, и я запустил эту команду $ supervisorctl start qlimp и я получаю эту ошибку

 unix:///var/run/supervisor.sock no such file 

Есть ли проблемы в настройке моего диспетчера?

Благодаря!

9 Solutions collect form web for “Настройка nginx и супервизора в Ubuntu”

То, что нет файла сокета, вероятно, означает, что супервизор не работает. Причина, по которой он не работает, может заключаться в том, что в вашем файле qlimp.conf есть какая-то ошибка. Если вы сделаете

 sudo service supervisor start 

вы можете увидеть, действительно ли это так. Если диспетчер уже работает, он скажет. И если он обнаруживает ошибку, он обычно дает вам более полезное сообщение об ошибке, чем supervisorctl.

Я встречал ту же проблему, что и вы, и несколько раз, вот решение:

  1. Сначала удалите версию apt-get supervisor:

      sudo apt-get remove supervisor 
  2. Убейте процесс супервизора:

      sudo ps -ef | grep supervisor 
  3. Затем получите самую новую версию (версия apt-get 3.0a8):

     sudo easy_install(pip install) supervisor==3.0b2 
  4. Echo конфигурационный файл (root premission):

     echo_supervisord_conf > /etc/supervisord.conf 

5. Начальный контроль:

  sudo supervisord 

6.Поддержка супервизора:

  sudo supervisorctl 

Все сделано! Повеселись!

Попробуй это

 cd /etc/supervisor sudo supervisord sudo supervisorctl restart all 

Вы уверены, что супервизор установлен и запущен? Есть ли файл сокета в /var/run/supervisor.sock ?

Ошибка указывает, что supervisorctl , CLI управления, не может связаться с UNIX-сокером, чтобы взаимодействовать с supervisord , демоном.

Вы также можете проверить /etc/supervisor/supervisord.conf и посмотреть, соответствуют ли значения для unix_http_server и supervisorctl .

Обратите внимание, что это проблема уровня Ubuntu, а не проблема с Python, Django или nginx, и поэтому такой вопрос, вероятно, принадлежит ServerFault.

В Ubuntu 16+, похоже, это вызвано переключением на systemd, это обходное решение может исправить для новых серверов:

  # Make sure Supervisor comes up after a reboot. $ sudo systemctl enable supervisor # Bring Supervisor up right now. $ sudo systemctl start supervisor 

а затем проверьте свой статус iconic.conf [Мой пример] руководителя

 $ sudo supervisorctl status iconic 

введите описание изображения здесь

PS: Удостоверьтесь, что у стрельбы не должно быть никаких проблем во время работы.

Ошибка может быть вызвана тем, что у вас нет привилегий. Возможно, вы можете исправить ошибку таким образом, откройте свой терминал и vim /etc/supervisord.conf чтобы отредактировать файл, выполнить поиск строк

[Unix_http_server]
; file = / tmp / supervisor.sock; (путь к файлу сокета)
; chmod = 0700; режим файла сокета (по умолчанию 0700)

и удалите точку с запятой в начале строки ;file=/tmp/supervisor.sock и ;chmod=0700 , перезапустите свой супервизор. Я предлагаю вам это сделать.

Убедитесь, что в /etc/supervisor.conf существуют следующие два раздела

 [unix_http_server] file=/tmp/supervisor.sock ; path to your socket file [rpcinterface:supervisor] supervisor.rpcinterface_factory = supervisor.rpcinterface:make_main_rpcinterface 

Вы можете сделать что-то вроде этого:

 sudo touch /var/run/supervisor.sock sudo chmod 777 /var/run/supervisor.sock sudo service supervisor restart 

Это определенно работает, попробуйте это.

В моем случае супервизор не работал. Чтобы определить проблему, которую я запускаю:

 sudo systemctl status supervisor.service 

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

Я надеюсь, что это помогает 🙂

  • Как подписаться на события PROCESS_STATE_RUNNING для всех процессов
  • Как использовать virtualenvwrapper в Supervisor?
  • supervisord всегда возвращает статус выхода 127 в WebFaction
  • Неисправность установки надзора с сельдереем
  • uwsgi: ваш серверный слуховой журнал отстает от 100 подключений
  • прослушиватель событий супервизора
  • supervisord для python 3?
  • Как я могу установить PATH для супервизора, чтобы найти исполняемые файлы
  • Python - лучший язык программирования в мире.