用supervisord运行python脚本

问题描述 投票:0回答:2

我有一个简单的python脚本(discord bot),当我用命令python3 discord_bot.py &sh start_bot.sh运行它时效果很好。但是如何用supervisord运行呢?

更新:我已经安装了supervisord。但是当我尝试运行进程时,我有错误:

exit status 0; not expected

我的supervisord配置:

[program:AFI]
command=/home/maksymov/www/Bots/discord_bots/afi/start_bot.sh
autostart=true
autorestart=true
stderr_logfile=/var/log/afi.err.log
stdout_logfile=/var/log/afi.out.log
user=www-data
python supervisor discord
2个回答
0
投票

可能你需要使用其中一个“主管”。像system.d或ramona

第一个是更一般的。第二个是更“特定于python”


0
投票

我想你的程序试图作为一个守护进程运行。我从文档中粘贴了最相关的部分:

Supervisord subprocess

意味着在主管下运行的程序不应该自己守护。相反,它们应该在前台运行。他们不应该从他们开始的终端分离。

判断程序是否在前台运行的最简单方法是运行从shell提示符调用程序的命令。如果它让你控制终端,但继续运行,那就是守护自己,这几乎肯定是在主管下运行它的错误方法。

© www.soinside.com 2019 - 2024. All rights reserved.