安装supervisor:
yum install -y supervisor
启动supervisor:
systemctl start supervisord
新增hyperf.ini配置文件,类似nginx:
# 新建一个应用并设置一个名称,这里设置为 hyperf
[program:hyperf]
# 设置命令在指定的目录内执行
directory=/www/wwwroot/hyperf-skeleton2.2
# 这里为您要管理的项目的启动命令
command=php -d swoole.use_shortname=Off ./bin/hyperf.php start
# 以哪个用户来运行该进程
user=root
# supervisor 启动时自动该应用
autostart=true
# 进程退出后自动重启进程
autorestart=true
# 进程持续运行多久才认为是启动成功
startsecs=1
# 重试次数
startretries=3
# stderr 日志输出位置
stderr_logfile=/www/wwwroot/hyperf-skeleton2.2/runtime/stderr.log
# stdout 日志输出位置
# stdout_logfile=/www/wwwroot/hyperf-skeleton2.2/runtime/stdout.log
#stdout 日志输出到黑洞(空设备文件)
stdout_logfile=/dev/null
重启supervisor:
systemctl restart supervisord
重启之后可以用supervisorctl命令控制hyperf服务状态:
其他控制命令:
# 启动 hyperf 应用
supervisorctl start hyperf
# 重启 hyperf 应用
supervisorctl restart hyperf
# 停止 hyperf 应用
supervisorctl stop hyperf
# 查看所有被管理项目运行状态
supervisorctl status
# 重新加载配置文件
supervisorctl update
# 重新启动所有程序
supervisorctl reload
增加新的服务和进程,类似nginx的配置一样在cd /etc/supervisord.d目录下新增对应的服务即可: