一、开启命令
- supervisor的服务器端部分启动命令:
- sudo unlink /var/run/supervisor.sock
- supervisord -c /etc/supervisor/supervisord.conf
此时默认开启了所有服务
- supervisor的客户端部分命令:
- supervisorctl status 查看进程运行状态
- supervisorctl start 进程名 启动进程
- supervisorctl stop 进程名 关闭进程
- supervisorctl restart 进程名 重启进程
- supervisorctl reread 重新读取配置
- supervisorctl update 重新载入配置文件
- supervisorctl shutdown 关闭supervisord
- supervisorctl clear 进程名 清空进程日志
- supervisorctl 进入到交互模式下。使用help查看所有命令。
- start stop restart + all 表示启动,关闭,重启所有进程。
二、关闭命令
supervisorctl stop all先关闭supervisor服务
之后再关闭supervisord服务
kill -9 pid
-------------------------------------------------------------------------------------------------------------------------------------------------------------
1、安装supervisor
supervisor4.0.0已支持python3,需使用pip安装
sudo pip install supervisor
2、软连接,使其正常执行命令
sudo ln -s /usr/local/bin/supervisord /usr/bin/supervisord
sudo ln -s /usr/local/bin/supervisorctl /usr/bin/supervisorctl
3、产生设置
sudo mkdir /etc/supervisor #创建supervisor,若存在请忽略
sudo mkdir /etc/supervisor/conf.d #创建conf.d,若存在请忽略
sudo echo_supervisord_conf > /etc/supervisor/supervisord.conf 添加设置
4、修改设置
sudo vim /etc/supervisor/supervisord.conf #在[supervisord]下面添加environment=LC_ALL='en_US.UTF-8',LANG='en_US.UTF-8'解决编码问题,将末尾的[include]部分改为:files = /etc/supervisor/conf.d/*.conf 读取用户配置
5、设置开机自启
sudo vim /usr/lib/systemd/system/supervisord.service
#添加以下内容并保存
[Unit]
Description=Supervisor daemon
[Service]
Type=forking
ExecStart=/usr/bin/supervisord -c /etc/supervisor/supervisord.conf #读取配置
ExecStop=/usr/bin/supervisorctl shutdown
ExecReload=/usr/bin/supervisorctl reload
KillMode=process
Restart=on-failure
RestartSec=42s
[Install]
WantedBy=multi-user.target
5、使用systemctl执行相关命令
sudo systemctl start supervisord #启动 Supervisor 服务
sudo systemctl stop supervisord #停止 Supervisor 服务
sudo systemctl restart supervisord #重启 Supervisor 服务
sudo systemctl status supervisord #查看 Supervisor 服务状态
sudo systemctl enable supervisord #设置 Supervisor 服务开机自启动
sudo systemctl disable supervisord #关闭 Supervisor 服务开机自启动
6、安装gunicorn
进入项目根目录
pipenv install gunicorn
7、用户配置
sudo vim /etc/supervisor/conf.d/xxx.conf #xxx项目名称
#添加以下内容
[program:xxx] #xxx项目名称
command=pipenv run gunicorn -w 5 app:app #使用pipenv运行gunicorn程序 -w 5(2*cpu核心数 + 1)
directory=/home/overman/fangjuhe #项目根目录
user=xxx #创建该项目用户
autostart=true #在supervisord启动的时候也自动启动
autorestart=true #程序异常退出后自动重启
stopasgroup=true #确保关闭supervisord时停止所有相关子进程
killasgroup=true #确保关闭supervisord时停止所有相关子进程
作者:初见风吟_overman
链接:https://www.jianshu.com/p/3e1f7b8b6214
来源:简书
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
作者:黑暗中的杜迪安
链接:https://www.jianshu.com/p/c8071234f081
来源:简书
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。