dotcloud芹菜许可否认

时间:2013-01-22 14:44:53

标签: django celery dotcloud

我正在尝试在我的django应用程序中使用celery,以便我可以运行一个后台进程,将CSV文件导入到我的模型数据库中。这在使用以下方法运行芹菜工作者的本地机器上正常工作:

python manage.py celery worker --loglevel=info

和RabbitMQ

rabbitmq-server

这是我推送到dotcloud时收到的错误

workers.0    celery.platforms.LockFailed: [Errno 13] Permission denied: '/celeryev.pid'

编辑:

supervisord.conf

[program:djcelery]
command = /home/dotcloud/env/bin/python /home/dotcloud/current/cellhelmet/manage.py celeryd -E -l info -c 2
stderr_logfile = /var/log/supervisor/%(program_name)s_error.log
stdout_logfile = /var/log/supervisor/%(program_name)s.log

[program:celerycam]
command = /home/dotcloud/env/bin/python /home/dotcloud/current/cellhelmet/manage.py     celerycam
stderr_logfile = /var/log/supervisor/%(program_name)s_error.log
stdout_logfile = /var/log/supervisor/%(program_name)s.log

2 个答案:

答案 0 :(得分:1)

看起来你正在尝试写一个pid文件到/哪个有意义为什么你会得到一个权限被拒绝。

你对CELERYD_PID_FILE的价值有什么看法?

尝试将其设置为其中一个选项

CELERYD_PID_FILE =" /var/log/supervisor/%n.pid" CELERYD_PID_FILE =" /家庭/ dotcloud /"

有关配置选项的更多信息,请访问:http://ask.github.com/celery/cookbook/daemonizing.html

如果这不起作用,您可以告诉我们您是如何开始执行命令并发送用于运行芹菜的任何配置(supervisord.conf等)和脚本。

答案 1 :(得分:0)

问题是我从supervisord.conf文件中删除了这一行:

directory = /home/dotcloud/current/cellhelmet

这导致它从根目录中搜索我假设哪个给了我权限被拒绝错误。它确实为我清除了它。

相关问题