时间:2022-09-12 10:16:12 | 栏目:Python代码 | 点击:次
首先说明,Supervisor 只能安装在 Python 2.x 环境中!
但是基本上所有的 Linux 都同时预装了 Python 2.x 和 Python 3.x 版本,并且调用 python 命令时默认运行的 Python 2,运行 Python 3 只需要 调用 python3 即可。
博主的 CentOS 上预装了 Python 2.7 和 Python 3.5(后升级到了 3.7),并且将 Python 命令默认链接到 Python 3.7。
因此博主的环境是
python : python 3.7 版本
python2 : python 2.7 版本
pip : pip for 3.7
pip2 : pip for 2.7
安装
pip2 install supervisor
此时 [python2]/bin 中多了一些命令
如 supervisor、supervisorctl、echo_supervidord_conf
可以直接全局运行
配置
输出配置文件内容并重定向到 /etc/supervisord.conf 中
echo_supervisord_conf > /etc/supervisord.conf
打开该文件,配置方式的每一步在注释都写得很清楚了,或者网上找中文说明也可
建议 mkdir /etc/supervisor.d 然后把单独的进程配置独立为一个 xxx.ini,然后在 supervisord.conf 最后 include supervisor.d/*.ini,把所有独立的进程配置文件导入进来,现在的软件配置基本上都是采用这种分模块的方式,这里给出一个我的进程配置以供参考:
关键的一步,在配置 command 时若要使用 Python 3 或是 使用特定 venv 的 Python 执行命令,只需要将命令的完整路径补充完整即可,如我这里使用的就是为 flask 配置的 独立 Python 虚拟环境,配置完成后保存
运行 supervisord 会默认以 /etc/supervisord.conf 作为配置文件后台运行 supervisor 进程管理,也可以 运行 supervisord -c [配置文件路径] 来指定