LINUX

首页 -  LINUX  -  Supervisor管理Laravels,Laravels进程管理

Supervisor管理Laravels,Laravels进程管理

Supervisor管理Laravels,Laravels进程管理

    当laravel项目安装了laravels的时候,由于各种原因导致laravels服务停止,这个时候我们可以选择Supervisor来
管理laravels服务,具体安装配置如下:
yum install supervisor

如果发生以下异常

yum Supervisor

解决方案先安装扩展

yum install epel-release

  然后在执行

yum install supervisor

 启动Supervisor服务

1 supervisord -c /etc/supervisord.conf

在supervisord.conf配置文件中我们可以看到配置的文件地址supervisord.d/.in文件为配置项目文件

QQ截图20210507155047.png

进入/etc/supervisord.d/新建配置文件laravels.ini 配置如下 这个laravels.ini配置文件要有执行权限

[program:laravels]
command=docker exec php bash -c '/docker/www/lmrs-2008/bin/laravels start -i'
autorestart=true
startsecs=3
startretries=3
stdout_logfile=/docker/www/lmrs-2008/storage/logs/swool.log
stderr_logfile=/docker/www/lmrs-2008/storage/logs/swool.log
stdout_logfile_maxbytes=2MB
stderr_logfile_maxbytes=2MB
user=root
priority=999
numprocs=1
process_name=%(program_name)s_%(process_num)02d

 注意事项(我遇到的坑):

一般来说我们启动容器后要与容器进行交互操作,这是,就要加上"-it"这个参数,而在重启过重中或定时任务中,如果让脚本在后台运行,就没有可交互的终端,这就会引发错误 the input device is not a TTY,解决办法就是去掉“-it”这个参数。

2.配置完成后对配置项进行载入

supervisord启动成功后,可以通过supervisorctl客户端控制进程,启动、停止、重启。运行supervisorctl命令,不加参数,会进入supervisor客户端的交互终端,并会列出当前所管理的所有进程。 

supervisorctl  #进入客户端

help #查看命令

#对应命令 reload 加载 update 更新 reread 载入

3.配置完成后项目可正常访问laravels就监听成功了。


附加知识当我们用supervis管理了laravels后代码在发生变化的时候,用户访问的还是原来的这个时候我们就需要重新加载laravels命令如下,不知道还有什么更好的解决方法?

php laravels reload


(3)
分享:

本文由:xiaoshu168.com 作者:xiaoshu发表,转载请注明来源!

标签:

相关阅读