安装supervisor

[复制链接]
admin 发表于 2022-4-20 09:56:11 | 显示全部楼层 |阅读模式
注意:该教程针对CentOS7版本,如果使用其他版本可能会出现某些未知的问题,如果需要使用其他版本的CentOS,建议搜索其他安装教程。一、安装supervisor
安装前请保证root权限,如果是非root用户,请切换为root用户:
$ sudu su -
安装第三方源,CentOS本身的yum源中没有supervisor,需要更换第三方源:
# yum install epel-release
安装supervisor:
# yum install -y supervisor
设置supervisor 开机自动启动:
# systemctl enable supervisord
启动supervisor 服务、查看supervisor 服务状态、查看是否存在supervisor 进程:
# systemctl start supervisord
# systemctl status supervisord
# ps -ef|grep supervisord二、修改supervisor配置文件
修改配置文件内容,开启web界面确认supervisor安装无误:
找到配置文件中的web页面:
;[inet_http_server]         
;port=127.0.0.1:9001        
;username=user              
;password=123
将注释解开(该配置文件中';'为注释),ip地址改为本机ip或0.0.0.0,确保9001端口没有被其他服务占用,如果占用,请关闭占用端口服务或更改配置文件中的端口号:
[inet_http_server]         
port=0.0.0.0:9001      
username=user              
password=123
修改完成后重新加载配置文件:
supervisorctl reload
在本地访问配置文件中的web界面地址,如192.168.1.22:9001,如果成功进入登录界面,则修改成功,如果无法进入登录界面,请检查CentOS系统防火墙是否关闭。根据配置文件中的账号密码登录后,进入supervisor控制台。
三、添加项目对应配置文件
在web能够正常访问之后,需要添加项目需要的配置文件。
进入supervisor的子配置文件中:
# cd /etc/supervisord.d/
创建配置文件:
# vim program.ini
将下方的配置文件内容复制进去:
[program:program]                              ;项目名称
directory = /root/Tributte                     ;启动目录
command =  /root/venv/bin/uwsgi --ini /root/Tributte/uwsgi.ini       ;启动命令
autostart = true                               ;在supervisord启动的时候也启动
startsecs = 5                                  ;启动5秒后没有异常退出,就当作已经正常启动
autorestart = true                             ;程序异常退出后自动重启
startretries = 3                               ;启动失败自动重试次数,默认是3
user = root                                    ;哪个用户启动
redirect_stderr = true                         ;把stderr重定向到stdout,默认false
stdout_logfile_maxbytes = 20MB                 ;stdout日志文件大小,默认50MB
stdout_logfile_backups = 20                    ;stdout日志文件备份数
​
修改supervisord.conf中的文件路径:
[include]
files = supervisord.d/*.ini
将*更改为刚才修改的配置文件名称:
[include]
files = supervisord.d/program.ini
最后再次重新加载配置文件:
# supervisorctl reload
查看状态:
# supervisorctl status

启动、停止、重启program进程:
# supervisorctl start laravel-worker:*
# supervisorctl stop laravel-worker:*
# supervisorctl restart laravel-worker:*


Error: Another program is already listening on a port that one of our HTTP servers is configured to
  1. unlink /var/run/supervisor.sock
  2. unlink /tmp/supervisor.sock
复制代码

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则