supervisor
配置
进程的管理工具,监控服务器状态,遇到问题会自动重启。
1:sudo pip install supervisor
# 用python2安装
2:echo_supervisord_conf > supervisord.conf
# 执行这个命令,在当前文件夹下生成supervisor的配置文件
3:vim supervisord.conf
# 编辑生成的supervisor配置文件,把下面的代码加到文件最下面。
[include]
files = /etc/supervisor/*.conf
4:cp supervisord.conf /etc
# 把生成的配置文件cp到etc下
5:mkdir /etc/supervisor
# 创建这个文件夹,用来储存要supervisor要管理的项目和执行脚本。 (第三步指定过)
6:cd /etc/supervisor
touch 项目名.conf
# 创建一个项目的配置文件,加入以下内容(要复制代码在图片下面,指定的两个路径要改成自己的)
[group:backend]
programs=3dvserver
[program:3dvserver]
command=/etc/supervisor/scripts/3dv_script.sh
directory=/home/tanzhihao/3dview_remote
user=root
autorestart=true
redirect_stderr=false
loglevel=info
stopsignal=KILL
stopasgroup=true
killasgroup=true
7:mkdir script
# 用来存放要执行的脚本
cd script
8: touch 脚本文件名.sh
# 用来执行的脚本,并编辑加入以下内容
#! /bin/bash
source ~/.bashrc
export FLASK_ENV=production
cd /home/tanzhihao/3dview_remote
exec gunicorn -w 2 -b 127.0.0.1:5005 manage:app
9:chmod 777 脚本文件名.sh
# 给这个文件加执行权限,只加x也可。
10:supervisord -c /etc/supervisord.conf
# 启动supervisor
11: supervisorctl
# 进入supervisor管理进程
相关命令
status # 查看程序状态,会显示你布置好的程序名
start 程序名称 # 启动程序
stop 程序名称
命令很多可以网上查下,这俩常用.
Bugs,以及一些使用心得.
B1: unix:///var/run/supervisor/supervisor.sock refused connection问题
supervisord -c /etc/supervisord.co