Ubuntu安装Supervisor

apt install -y supervisor

开机启动

#supervisor开机自启:
systemctl enable supervisor

# 开始运行
systemctl start supervisor

检查supervisor运行情况

ps aux | grep supervisord

启动supervisor的9001服务

前期准备

# 在etc下创建一个supervisor文件
sudo mkdir /etc/supervisor 
# 初始化一个supervisord.conf配置文件
echo_supervisord_conf > /etc/supervisor/supervisord.conf
# 创建一个conf.d文件夹
sudo mkdir /etc/supervisor/conf.d

修改supervisord.conf配置文件

vim /etc/supervisor/supervisord.conf
# vim查看行数 shift+:  → set nu → 回车键(enter)
# supervisor.conf 使用;作为注释语句 
# 打开以下注释
 39 [inet_http_server]         ; inet (TCP) server disabled by default
 40 port=0.0.0.0:9001        ; ip_address:port specifier, *:port for all iface
 41 username=root              ; default is no username (open server)
 42 password=123               ; default is no password (open server)
 
# 使用shift+g 到达最后一行
# 修改配置文件引用路径
169 [include]
170 files = /etc/supervisor/conf.d/*.conf

启动supervisor

# 重载supervisor
supervisorctl reload

# supervisor加载配置文件
supervisord -c /etc/supervisor/supervisord.conf

supervisor配置示例

vim /etc/supervisor/conf.d/aa.conf


[supervisord]
# 程序的名字,在supervisor中可以用这个名字来管理该程序。
[program:ar]
# 程序的启动目录,相当于在该目录下执行程序
directory = /root/artictls
# 程序的启动命令,与命令行启动的命令是一样的
command = python3.8 manage.py runserver 0.0.0.0:21000
# 在supervisord 启动的时候也自动启动
autostart = true
# 启动 5 秒后没有异常退出,就当作已经正常启动了
startsecs = 15
# 程序异常退出后自动重启
autorestart = true
# 启动失败自动重试次数,默认是 3
startretries = 3
# 用哪个用户启动
user = root
# 把 stderr 重定向到 stdout,默认 false,是否将程序错误信息重定向的到文件
redirect_stderr = true
# stdout 日志文件大小,默认 50MB
stdout_logfile_maxbytes = 50MB
# stdout 日志文件备份数
stdout_logfile_backups = 20
stdout_logfile = /root/artictls/log/main.log
# 程序错误信息输出到该文件
stderr_logfile =/root/artictls/log/main.err.log

# 可以通过 environment 来添加需要的环境变量,一种常见的用法是修改 PYTHONPATH
#environment = PYTHONPATH=$PYTHONPATH:/path/to/somewhere
[supervisorctl]

Supervisor 相关命令

#重载supervisor
supervisorctl reload

#更新supervisor
supervisorctl update

#查看状态
supervisorctl status

#更新新的配置到supervisord
supervisorctl update

#启动所有/指定的程序进程
supervisorctl start [all]|[x]

#关闭所有/指定的程序进程
supervisorctl stop [all]|[x]

#启动supervisor
supervisord

#通过配置文件启动supervisor
supervisord -c supervisor.conf

#开启test服务
supervisorctl start test


本文地址: http://chenxm.cc/article/1335.html
版权声明: 本文为原创文章,版权归  陈新明  所有,欢迎分享本文,转载请保留出处!
上一篇: django 将queryset中datetime序列化json
下一篇: macbook m1 pro 安装pyproj解决思路
发表评论

还没有留言,还不快点抢沙发?