1、安装supervisor
yum install supervisor
# 执行完之后 在/etc 目录中会生成 supervisord.conf
2、配置
设置开机自启动
systemctl enable supervisord.service
supervisord 的配置 文件是 /etc/supervisord.conf
shift + G 最后一行改成图中 files = supervisord.d/*.ini
完成后需要在 /etc/supervisord.d/ 目录下配置你要守护的项目的配置信息:swoole.ini (名称自定义)
添加swoole.ini配置信息:
[program:laravel-worker]
;项目路径
directory=/data/wwwroot/kuabei
process_name=%(program_name)s_%(process_num)02d
;项目命令 php找到得你安装位置(ps -ef | grep php)
command=/usr/local/php/bin/php artisan swoole:http start
;是否supervisor启动也跟着启动
autostart=true
;程序异常退出后自动重启
autorestart=true
;使用哪个ssh的用户去启动它
user=root
;进程数
numprocs=5
;把 stderr 重定向到 stdout,默认 false
redirect_stderr=true
;运行日志,排查问题 (在/var/log/supervisor文件下touch laravel-queue.log 并给与权限 chmod +x laravel-queue.log)
stdout_logfile=/var/log/supervisor/laravel-queue.log
;启动10秒后没有异常就退出
startsecs=10
;启动失败重试3次
startretries=3
;autorestart=true。如果为false则不自动重启,如果为true表示如果程序退出信号不在 `exitcodes` 中,则自动重启。
exitcodes=0
3、启动
supervisord -c supervisord.conf
4、总结
如果你是直接把laravel官方文档中的supervisor配置拿过来的话 一定记得改驱动如下图所示 去掉sqs
查看常见错误排查
常用命令:
#启动
systemctl start supervisord.service
#关闭
systemctl stop supervisord.service
#重启
systemctl restart supervisord.service