一、准备工作
在开始安装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的配置,包括配置文件和程序的配置。
1、配置文件
supervisor的配置文件位于/etc/supervisor目录下,可以通过以下命令打开:
sudo vim /etc/supervisor/supervisord.conf
在打开的配置文件中,常用的配置如下:
- logfile:指定supervisor的日志文件路径,建议配置成绝对路径。
- pidfile:指定supervisor的PID文件路径,建议配置成绝对路径。
- user:指定supervisor运行的用户。
- nodaemon:表示supervisor在前台运行,方便观察日志。
修改配置文件后需要重启supervisor才能生效:
sudo service supervisor restart
2、程序配置
程序配置文件位于/etc/supervisor/conf.d目录下,每个程序对应一个配置文件,以.conf为后缀。
以下是一个简单的配置示例,配置一个应用程序myapp:
[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等。