一、准备工作
在开始安装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等。