Supervisor 未加载新的配置文件

Supervisor 未加载新的配置文件

我在使用 Gunicorn 和 Supervisor 部署 Django 应用时遇到问题。虽然我可以让 Gunicorn 为我的应用提供服务(通过设置正确的 PYTHONPATH 并运行适当的命令,即来自 Supervisord 配置的命令),但我无法让 Supervisor 运行它。它就是看不到我的应用。我不知道如何确保配置文件是否正常。

以下是supervisorctl 所说的内容:

# supervisorctl start myapp_live
myapp_live: ERROR (no such process)

我在 Ubuntu 10.04 上运行它,配置如下:

文件/home/myapp/live/deploy/supervisord_live.ini:

[program:myapp_live]
command=/usr/local/bin/gunicorn_django --log-file /home/myapp/logs/gunicorn_live.log --log-level info --workers 2 -t 120 -b 127.0.0.1:10000 -p deploy/gunicorn_live.pid webapp/settings_live.py
directory=/home/myapp/live
environment=PYTHONPATH='/home/myapp/live/eco/lib'
user=myapp
autostart=true
autorestart=true

在/etc/supervisor/supervisord.conf中,在文件末尾有:

[include]
files = /etc/supervisor/conf.d/*.conf

这是我的配置文件的符号链接:

# ls -la /etc/supervisor/conf.d
lrwxrwxrwx 1 root root   48 Dec  4 18:02 myapp-live.conf -> /home/myapp/live/deploy/supervisord_live.ini

对我来说一切都很好,但supervisorctl 只是一直说myapp_live: ERROR (no such process)。有什么解决办法吗?

答案1

我遇到了同样的问题,

sudo service supervisord reload

确实起了作用,尽管我不知道这是否是你问题的答案。

答案2

正确答案是主管要求你重读当您放置新的配置文件时更新。重新启动不是答案,因为这会影响其他服务。尝试:

supervisorctl reread
supervisorctl update

答案3

确保你的主管配置文件以 .conf 结尾

我花了一段时间才弄清楚。希望它能帮助到下一个人。

答案4

我遇到了类似的问题(myapp_live: ERROR (no such process)),这是因为我的流程定义是

[program: myapp_live]

而本该如此

[program:myapp_live]

虽然这并没有解决所问的问题,但我被搜索引导到这里来寻找我的问题的解决方案,所以希望其他人也能在这里找到它。

相关内容