一、準備工作
在開始安裝supervisor前,需要確保服務器上已經安裝了Python以及pip,如果沒有安裝則需要先安裝。
sudo apt-get update
sudo apt-get install python-pip
二、安裝supervisor
在安裝supervisor之前,需要先安裝supervisor的依賴:
sudo apt-get install supervisor
安裝完成之后,可運行以下命令驗證是否安裝成功:
sudo supervisord -h
如果看到以下輸出,則表明安裝成功:
Usage: supervisord [-c CONFIG] [-n] [-h] [--version] [programname ...]
三、配置supervisor
在安裝完成后,需要進行supervisor的配置,包括配置文件和程序的配置。
sudo vim /etc/supervisor/supervisord.conf
在打開的配置文件中,常用的配置如下:
logfile:指定supervisor的日志文件路徑,建議配置成絕對路徑。 pidfile:指定supervisor的PID文件路徑,建議配置成絕對路徑。 user:指定supervisor運行的用戶。 nodaemon:表示supervisor在前臺運行,方便觀察日志。修改配置文件后需要重啟supervisor才能生效:
sudo service supervisor restart
[program:myapp] command=/usr/bin/python /path/to/your/script.py directory=/path/to/your/app user=user_name autostart=true autorestart=true stderr_logfile=/var/log/myapp.err.log stdout_logfile=/var/log/myapp.out.log
其中,配置文件中的參數詳細說明如下:
program:程序名,唯一標識符。 command:啟動指令,即啟動該程序的命令。 directory:程序所在目錄。 user:指定以哪個用戶運行該程序。 autostart:是否隨著supervisor的啟動而啟動。 autorestart:是否自動重啟。 stderr_logfile:錯誤日志輸出文件路徑,建議配置成絕對路徑。 stdout_logfile:標準輸出日志輸出文件路徑,建議配置成絕對路徑。以上是程序配置的基本內容,可根據需要進行調整。配置完成后,同樣需要重啟supervisor才能生效。
四、常用命令
以下是supervisor幾個常用的命令:
supervisorctl start program_name:啟動指定的程序。 supervisorctl stop program_name:停止指定的程序。 supervisorctl restart program_name:重啟指定的程序。 supervisorctl status:查看所有程序的狀態。五、總結
通過以上步驟,我們已經成功地安裝并配置了supervisor,并成功地啟動了一個應用程序。supervisor不僅可以管理Python程序,還可以管理其他類型的程序,例如Node.js、PHP等。