# Supervisor ###### tags: `Supervisor` ## 安裝 `yum install supervisor` ## 位置 配置文件位置 : `/etc/supervisord.conf` 進程配置文件位置 : `/etc/supervisord.d/[program].ini` ## 進程配置 ``` [program:your_program_name] command=[指令] ;numprocs=1 ; 默認為1 ;process_name=%(program_name)s ; 默認為 %(program_name)s, 即 [program:x] 中的 x directory=[執行 command 前先切換到工作的目錄] user=[用戶] ; root 或其他 ; 程序崩潰時自動重啟, 重啟次數默認為 3 次 autorestart=true redirect_stderr=true ; 重定向輸出的日誌 stdout_logfile = [log位置] loglevel=info ``` ## 指令 ``` # 啟動 service supervisord start systemctl start supervisord # 設定開機啟動 systemctl enable supervisord # 停止 service supervisord stop systemctl stop supervisord # 重啟 service supervisord restart systemctl restart supervisord ``` ## supervisorctl 指令 ``` # 啟動某進程 supervisorctl start [program_name] # 停止某進程 supervisorctl stop [program_name] # 重啟某進程 supervisorctl restart [program_name] # 查看某進程 supervisorctl status [program_name] # 停止全部進程 supervisorctl stop all # 載入最新配置,停止原有進程並按新配置啟動 supervisorctl reload # 載入最新配置,不影響沒改動配置的進程 supervisorctl update # 查看所有進程 supervisorctl status ``` ###### tags: `Supervisor`