我習慣使用監督者在我的 Unix 機器上,現在我必須在 Windows 上做同樣的事情。遺憾的是,supervisord 不能在 Windows 機器下運作。
有人知道有什麼替代方案嗎?
答案1
Windows 可以為您做到這一點。
打開服務控制面板。選擇您的服務。轉到恢復選項卡。您可以為第一次、第二次和後續服務故障選擇選項。
答案2
您可以使用 Cygwin 在 Windows 下運行supervisord
,如下所述:https://stackoverflow.com/questions/7629813/is-there-windows-analog-to-supervisord
引用說明:
如果您還沒有安裝 Cygwin,請安裝它。在安裝過程中,選擇Python。
從 Cygwin 終端安裝虛擬環境照常。
為supervisord建立一個virtualenv,然後照常安裝:
pip install supervisor
以通常的方式配置supervisord。請記住,supervisord 將與 Cygwin 一起運行,因此您最好使用 Cygwin 方式的路徑(C:\myservers\project1 在 Cygwin 中轉換為 /cygdrive/c/myservers/project1)。
現在您可能想要將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服務管理員並啟動您剛安裝的服務supervisord。
上述解決方案幫助我控制在常規使用者會話中執行的 Tomcat 實例(而不是作為服務運行):
[program:tomcat]
command=/cygdrive/c/tomcat/bin/catalina.sh run
numprocs=1
directory=/cygdrive/c/tomcat
autostart=false
您可以設定supervisord
為登入時運行,然後您可以使用其Web介面來啟動/停止tomcat