参考:1、windows supervisor-win   2、windows安装配置supervisor(奇葩需求)

windows supervisor github项目地址: 点我查看   pip安装包

前言:需要先安装 python3 ,python2 没试过不知道行不行

1、安装 supervisor-win

pip install supervisor-win

2、生成配置文件

echo_supervisord_conf.exe > ..\etc\supervisord.conf

我是直接放到 python 所在目录的 etc 目录下,etc不存在,自己创建一个

mkdir etc

3、修改配置文件

配置文件 supervisord.conf 中的[inet_http_server]下面的 port=127.0.0.1:9001 和 [supervisorctl] 下面的 serverurl=http://127.0.0.1:9001 打开,否则 supervisorctl.exe 的 supervisorctl.exe status/restart 都无法用,最下面的 [include] 的 files= xxxx 与 Linux 配置方法一致

4、启动 supervisord

4.1 使用CMD启动并在后台运行

start /B supervisord -c D:\python39\etc\supervisord.conf

任务管理器可以看到相关的python进程,并且cmd窗口可以继续操作,但不能关闭

4.2 创建VBS脚本文件“start.vbs”并 设置开机自启动

Set ws = CreateObject("Wscript.Shell")

ws.run "cmd /c supervisord -c D:\Python39\etc\supervisord.conf",vbhide

 vbs脚本双击即可自动运行,设置开机自启动:打开目录 C:\ProgramData\Microsoft\Windows\Start Menu\Programs\StartUp,拷贝 start.vbs 到文件夹里面即可。

4.3 将supervisor安装成服务的形式(必须使用绝对路径)

python -m supervisor.services install -c C:\python\etc\supervisord.conf

 注意:以服务的方式启动,子程序不能与窗口进行交互

supervisor_service start #启动

supervisor_service stop #停止

是否启动成功可以打开新的命令行输入 supervisorctl 看是否能连接上

5、子程序配置文件示例(需要写绝对路径)

[program:test-example]

command=D:\\Python39\\python task

directory=H:\\Project\\test

autostart=true

autorestart=true

startsecs=3

startretries=10

stopasgroup=true

redirect_stderr=true

environment = PYTHONUNBUFFERED=1,PYTHONIOENCODING="UTF-8"

stdout_logfile=H:\\Project\\test\\log\\%(program_name)s.log

stdout_logfile_maxbytes=10MB

stdout_logfile_backups=5

参考文章

评论可见,请评论后查看内容,谢谢!!!
 您阅读本篇文章共花了: