Я привык использоватьсупервайзерна моих машинах Unix, и теперь я должен сделать то же самое для Windows. К сожалению, supervisord не работает под машинами Windows.
Кто-нибудь знает какие-нибудь альтернативы?
решение1
Windows может сделать это за вас.
Откройте панель управления службами. Выберите свою службу. Перейдите на вкладку Восстановление. Вы можете выбрать параметры для первого, второго и последующих сбоев служб.
решение2
Вы можете использовать Cygwin для работы supervisord
под Windows, как описано здесь:https://stackoverflow.com/questions/7629813/есть-окна-аналоговые-для-супервизора
Цитируемые инструкции:
Если вы еще этого не сделали, установите Cygwin. В процессе установки выберите Python.
Из терминала Cygwin установитевиртуальное окружениепо-прежнему.
Создайте virtualenv для supervisord, а затем выполните установку как обычно:
pip install supervisor
Настройте supervisord обычным способом. Помните, что supervisord будет работать с Cygwin, поэтому лучше использовать пути в стиле Cygwin (C:\myservers\project1 переводится как /cygdrive/c/myservers/project1 в Cygwin).
Теперь вы, вероятно, захотите установить supervisord как службу. Вот как я это делаю:
cygrunsrv --install supervisord --path /home/Administrator/supervisor/venv/bin/python --args "/home/Administrator/supervisor/venv/bin/supervisord -n -c /home/Administrator/supervisor/supervisord.conf"
Перейдите в диспетчер служб Windows и запустите диспетчер служб, который вы только что установили.
Приведенное выше решение помогло мне управлять экземпляром Tomcat, работающим в обычном сеансе пользователя (а не в качестве службы):
[program:tomcat]
command=/cygdrive/c/tomcat/bin/catalina.sh run
numprocs=1
directory=/cygdrive/c/tomcat
autostart=false
Вы можете настроить supervisord
запуск при входе в систему, а затем использовать веб-интерфейс для запуска/остановки tomcat.