一、环境


操作系统:CentOS 8.3
Supervisor:4.2.1

[root@VM-0-10-centos ~]# cat /etc/redhat-releaseCentOS Linux release 8.3.2011[root@VM-0-10-centos ~]# supervisord -v4.2.1

二、装置及配置


1.装置

[root@VM-0-10-centos ~]# yum install -y supervisor

2.查看装置地位

supervisor装置实现后,会在/usr/bin下生成三个执行程序:
supervisortd → 是supervisor的守护过程服务(用于接管过程治理命令);
supervisorctl → 客户端(用于和守护过程通信,发送治理过程的指令);
echo_supervisord_conf → 生成初始配置文件程序。
[root@VM-0-10-centos bin]# whereis supervisordsupervisord: /usr/bin/supervisord /etc/supervisord.conf /etc/supervisord.d[root@VM-0-10-centos bin]# whereis supervisorctlsupervisorctl: /usr/bin/supervisorctl[root@VM-0-10-centos bin]# whereis echo_supervisord_confecho_supervisord_conf: /usr/bin/echo_supervisord_conf

3.批改配置文件
默认地, 曾经有/etc/supervisord.conf这么个配置文件。在文件中退出以下代码蕴含自定义配置文件。

[include]files = supervisord.d/*.ini

4.自定义待守护过程配置文件
假如须要守护的是dotnet core利用,那么能够在/etc/supervisord.d下创立一个相似如下的配置文件:

[program:meedu]process_name=%(program_name)s_%(process_num)02dcommand=php /you-project-path/artisan queue:work --sleep=3 --tries=3directory=/vdb1/www/sms ; 命令执行的目录environment=ASPNETCORE_ENVIRONMENT=Production ; 过程环境变量user=zsitd ; 过程执行的用户身份stopsignal=INTautostart=trueautorestart=true ; 程序意外退出是否主动重启startsecs=3 ;/主动重启距离stderr_logfile=/var/log/supervisor/meedu.err.log ; 谬误日志文件stdout_logfile=/var/log/supervisor/meedu.out.log ; 输入日志文件

三、Supervisor启停服务


sudo supervisorctl rereadsudo supervisorctl updatesudo supervisorctl start meedu:*