通过supervisor管理laravelS

laravels的安装详见https://www.jianshu.com/p/d50aba3dd458

1 什么是Supervisor?

Supervisor是用Python开发的一套通用的进程管理程序,能将一个普通的命令行进程变为后台daemon,并监控进程状态,异常退出时能自动重启。

2 Supervisor的安装

yum epel-release 安装 supervisor

yum install -y epel-release && yum install -y supervisor

3 superviso命令

supervisor安装完成后会生成三个执行程序:supervisord、supervisorctl、echo_supervisord_conf:

  • supervisord:用于管理supervisor本身服务
  • supervisorctl:用于管理我们需要委托给superviso工具的服务
  • echo_supervisord_conf:用于生成superviso的配置文件

supervisord -c /etc/supervisord.conf #supervisord启动
supervisorctl status laravels #状态也可指定all
supervisorctl stop laravels #停止
supervisorctl start laravels #启动
supervisorctl restart laravels #重启
supervisorctl reoload laravels

4 修改配置文件

查看配置文件

cat /etc/supervisord.conf
#在末尾可以发现配置文件的引入,如果需要也可以改为/*.conf
[include]
files = supervisord.d/*.ini

#或者直接通过sed添加
sed -i '$a [include] \
files = /etc/supervisord.d/*.conf' /etc/supervisord.conf

5 编写需要被管理的进程laravels.ini

[program:laravels]
command=docker exec -i php bash -c '/docker/www/lmrs/bin/laravels start -i'
numprocs=1
autostart=true
autorestart=true
startretries=3
user=root
redirect_stderr=true
stdout_logfile=/docker/www/lmrs/storage/logs/supervisord-stdout.log

启动supervisord可以看到laravels被拉起


日志文件

手动停止laravels


停止laravels

查看进程以及日志发现laravels被重新拉起
查看进程

查看日志

你可能感兴趣的:(通过supervisor管理laravelS)