supervisor 启动一个守护进程详细过程

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/kaikai136412162/article/details/85105161

一、安装

apt install supervisor

源码安装

cd /usr/local/src
wget https://pypi.python.org/packages/7b/17/88adf8cb25f80e2bc0d18e094fcd7ab300632ea00b601cbbbb84c2419eae/supervisor-3.3.2.tar.gz
tar -zxvf supervisor-3.3.2.tar.gz
cd supervisor-3.3.2
python setup.py install #本地python版本为python2.7
# python2.7 setup.py install #本地python版本为python3以上

二、配置

1.生成配置文件

ls /etc/supervisor

conf.d  supervisord.conf

2.启动

supervisord -c /etc/supervisord.conf

查看 supervisord 是否在运行:

ps aux | grep supervisord

3.配置

vim /etc/supervisord.conf

在配置文件底部,配置include

[include]
files = /etc/supervisor/conf.d/*.conf #若你本地无/etc/supervisor/conf.d目录,请自建

写用supervisor管理进程,配置如下:

cd /etc/supervisor/conf.d/  
vim my.conf  # 这里文件名可以自定义

加入以下内容

;设置进程的名称,使用 uervisorctl 来管理进程时需要使用该进程名
[program:root]
command=python3 /root/test_dome/manage.py runserver 0.0.0.0:8000
;numprocs=1                 ; 默认为1
;process_name=%(program_name)s   ; 默认为 %(program_name)s,即 [program:x] 中的 x
directory=/root/test_dome/ ; 执行 command 之前,先切换到工作目录
user=root                 ; 使用 root 用户来启动该进程
; 程序崩溃时自动重启,重启次数是有限制的,默认为3次
autorestart=true
redirect_stderr=true        ; 重定向输出的日志
stdout_logfile = /root/test_dome/log.log
loglevel=info

更改了supervisor配置文件,需要重启,运行以下指令:

supervisorctl reload

4.supervisorctl的用法

supervisord : 启动supervisor
supervisorctl reload :修改完配置文件后重新启动supervisor
supervisorctl status :查看supervisor监管的进程状态
supervisorctl start 进程名 :启动XXX进程
supervisorctl stop 进程名 :停止XXX进程
supervisorctl stop all:停止全部进程,注:start、restart、stop都不会载入最新的配置文件。
supervisorctl update:根据最新的配置文件,启动新配置或有改动的进程,配置没有改动的进程不会受影响而重启

三、设置开机启动

猜你喜欢

转载自blog.csdn.net/kaikai136412162/article/details/85105161
今日推荐