【发布时间】:2012-01-13 21:07:44
【问题描述】:
我正在尝试在 Ubuntu 上使用 Django 和 Virtualenv 运行 celeryd,但出现此错误:
celeryd-multi v2.4.5
> Starting nodes...
> celery.heron: File "/sites/.virtualenvs/myproject/bin/python", line 1
SyntaxError: Non-ASCII character '\xa3' in file /sites/.virtualenvs/myproject/bin/python on line 2, but no encoding declared; see http://www.python.org/peps/pep-0263.html for details
* Child terminated with failure code 1
FAILED
我认为这是一个编码问题,但不确定在哪里。我将# -*- coding: utf-8 -*- 添加到我的 celeryd-multi 脚本、manage.py 脚本以及具有任务代码的实际 .py 文件中,但这并没有解决问题。
这是我的/etc/default/celeryd 配置文件:
CELERYD="/sites/.virtualenvs/myproject/bin/python /sites/dev.myproject.co/code/myproject/manage.py celeryd"
CELERYD_CHDIR="/sites/dev.myproject.co/code/myproject"
DJANGO_SETTINGS_MODULE="settings"
CELERYD_OPTS="-v 2 -B -s celery -E"
CELERYD_LOG_FILE="/sites/dev.myproject.co/logs/celery.log"
CELERYD_USER="www-data"
CELERYD_GROUP="www-data"
我错过了什么?
【问题讨论】:
-
您是否尝试将 Python 解释器二进制文件作为 Python 脚本执行?
-
是的,看起来正在发生的事情。请参阅下面的答案和 cmets。
标签: python django ubuntu virtualenv celery