【Supervisor】使用 Supervisor source command not found 如何解决

结论:

The source command is only available in bash, and the supervisor command is run by sh. I would recommend using a script to perform your commands

 

 

 

代码示例:

[program:alarm_handler]
command = bash /opt/disk2/var/www/maliksi/file_protect/management/commands/alarm_handler_init.sh
# > /tmp/alarm_handler.log
process_name = %(program_name)s
stopsignal = QUIT
autostart = true
# startsecs = 30
# startretries = 3
autorestart = true
# exitcodes = 0,1,2
stdout_logfile_maxbytes = 10MB
stdout_logfile_backups = 5
stdout_logfile = /var/log/supervisor/%(program_name)s-stdout.log
stderr_logfile = /var/log/supervisor/%(program_name)s-stderr.log
# redirect_stderr = true

 

启动脚本:

#!/bin/bash

source /opt/ENV/ubuntu1227/bin/activate
exec /opt/ENV/ubuntu1227/bin/python /opt/disk2/var/www/maliksi/manage.py alarm_handler

 

It Works !

 

参考资料:

http://serverfault.com/questions/390531/running-django-custom-management-commands-with-supervisord

https://web.archive.org/web/20130526045634/http://sjsnyder.com/managing-virtualenv-apps-with-supervisor

 

posted @ 2016-11-18 16:53  junneyang  阅读(6026)  评论(0编辑  收藏  举报