1.安裝配置Supervisorpython
supervisor是用Python開發的一個client/server服務,是Linux/Unix系統下的一個進程管理工具。
能夠很方便的監聽、啓動、中止、重啓一個或多個進程。用supervisor管理的進程,當一個進程意外被殺死,
supervisor監聽到進程死後,會自動將它重啓,很方便的作到進程自動恢復的功能,再也不須要本身寫shell腳原本控制。shell
在Ubuntu17.04中安裝Supervisorcentos
首先保證本地的python環境是ok的,且python是2.x版本的,若有多個版本須要切換到2.x工具
sudo apt-get install supervisor 網站
基於python庫安裝
pip2 install supervisor
easy_install supervisorspa
2.安裝成功後默認安裝路徑:
/etc/supervisor命令行
supervisor文件夾下有supervisord.conf配置文件server
upervisord.conf是一些默認配置,可自行修改:
blog
配置本身的 Supervisor信息和目錄路徑:
打開/etc/supervisor/路徑下的supervisord.conf文件。尾部找到以下文本片斷:
;[include]
;files=/etc/supervisor/conf.d/*.conf進程
注意:[include]默認配置是制定*.conf,在centos中默認是*.ini ,兩種均可以。
修改後,supervisord加載時就會自動加載/etc/supervisor/conf.d目錄下,全部以.conf結尾的配置文件,所以若是須要
supervisord守護多個進程,則在/etc/supervisor/conf.d文件夾中配置多個以.conf結尾的配置文件便可
/etc/supervisor/conf.d
目錄用來存放用戶自定義的進程配置,參考:
此處能夠編輯用戶的自定義配置文件。
注意: supervisor不能監控後臺進程,command 不能爲後臺運行命令
3.啓動服務
sudo supervisord -c /etc/supervisor/supervisord.conf
每次修改配置文件後,都要執行重啓命令,這裏要注意,由於沒有環境變量,這種命令都要在supervisor安裝目錄裏執行。
好比本文的etc/supervisor目錄下,不然會報找不到文件錯誤,其實就是找不到supervisor執行文件了:
重啓:
supervisorctl reload
supervisorctl 是 supervisord的命令行客戶端工具
直接輸入:supervisorctl 進入supervisorctl 的shell交互界面
ps -ef | grep supervisord
要關閉supervisord直接kill相關進程便可
還能夠設置supervisord開機啓動等操做。
在 supervisor中啓動netcore的網站項目,網站源碼須要編譯,直接使用dotnet run會致使訪問失敗。(還未排查緣由)