在 Supervisord 中通过 sh 脚本启动程序
launching program through sh script in Supervisord
我有一个脚本 run.sh 可以启动 python 发布订阅监听器,如下所示:
export MY_ENV_VAR='/root/config/'
python /usr/local/lib/python2.7/dist-packages/listener/main.py
我设置了 Supervisord,这样我就可以 运行 我的脚本如下:
[program:Listener]
command=/bin/bash run.sh
directory=/root/listener
process_name=%(program_name)s
autostart=true
autorestart=true
startretries=3
我的问题是:当我在 9001 端口访问我的 Supervisord UI 并按下 Listener 行旁边的 STOP
时,我真的停止了我的 Listener 吗?我的印象是,由于 supervisord 指向 .sh
脚本,因此当我单击 STOP
.
时它不会停止 python 脚本
你可以尝试指定
stopasgroup=true
配置文件中的参数。
所以 supervisord 也会向子进程发送 kill 信号:
我有一个脚本 run.sh 可以启动 python 发布订阅监听器,如下所示:
export MY_ENV_VAR='/root/config/'
python /usr/local/lib/python2.7/dist-packages/listener/main.py
我设置了 Supervisord,这样我就可以 运行 我的脚本如下:
[program:Listener]
command=/bin/bash run.sh
directory=/root/listener
process_name=%(program_name)s
autostart=true
autorestart=true
startretries=3
我的问题是:当我在 9001 端口访问我的 Supervisord UI 并按下 Listener 行旁边的 STOP
时,我真的停止了我的 Listener 吗?我的印象是,由于 supervisord 指向 .sh
脚本,因此当我单击 STOP
.
你可以尝试指定
stopasgroup=true
配置文件中的参数。
所以 supervisord 也会向子进程发送 kill 信号: