一、安装Supervisor
yum install epel-release
yum install -y supervisor
systemctl enable supervisord # 开机自启动
systemctl start supervisord # 启动supervisord服务
systemctl status supervisord # 查看supervisord服务状态
ps -ef|grep supervisord # 查看是否存在supervisord进程
二、配置可视化界面
vim /etc/supervisord.conf
[inet_http_server] ; inet (TCP) server disabled by default
port=0.0.0.0:9001 ; (ip_address:port specifier, *:port for all iface)
username=user ; (default is no username (open server))
password=123 ; (default is no password (open server)
#重启supervisord
systemctl restart supervisord
输入账号user和密码123
三、Supervisor 对 LaravelS 服务进行管理
- 在/etc/supervisord.d目录下新增laravels.ini
cd /etc/supervisord.d
touch laravels.ini
vim laravels.ini
## 以下是配置文件内容
[program:laravel-s-test]
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服务
systemctl restart supervisord
- supervisorctl 是 supervisord的命令行客户端工具
supervisorctl status # 查看所有进程的状态
supervisorctl stop es #停止es
supervisorctl start es #启动es
supervisorctl restart es#重启es
supervisorctl update # 配置文件修改后可以使用该命令加载新的配置
supervisorctl reload #重新启动配置中的所有程序
- 测试
#进入php容器
docker exec -it php bash
#进入项目目录
cd /docker/www/lmrs
#停止lavavels
php bin/laravels stop
#查看容器
cat storage/logs/supervisord-stdout.log
- log日志(两次停止后的截图)
- 同时查看laravels进程