使用virtualenv的Celery的第一步

时间:2013-10-20 15:54:26

标签: python celery virtualenv

我正在使用Celery进行第一步。我创建了一个基于http://docs.celeryproject.org/en/latest/getting-started/first-steps-with-celery.html中描述的步骤的小例子当我尝试使用

手动启动工作程序时
celery -A my_example worker --loglevel=info

我遇到错误,因为找不到我的virtualenv中的模块。 virtualenv被激活并且模块已经安装,所以我假设芹菜正在使用我的全局python解释器。我查了一下

celery worker --help

但没有找到指定某个解释器或virtualenv的参数。有人可以告诉我如何在virtualenv中手动启动工作人员吗?

更新

我在我的全球python环境和我的virtualenv中安装了Celery。我删除了两个并仔细检查了两个版本都被删除了。然后我安装了芹菜我的virutalenv。如果我现在调用celery命令行工具,则会收到以下错误:

-bash: /usr/local/bin/celery: No such file or directory

如果要安装工具,那就是安装工具的位置。那么Celery在virtualenv工作了吗?

1 个答案:

答案 0 :(得分:6)

试图在virtualenv中干净地安装celery(不在全局系统解释器中安装):

mkdir celery-test
cd celery-test
virtualenv-2.7 .python
source .python/bin/activate
pip install celery
celery worker --help

它完美无缺,which celery给了我:

/home/user/projects/celery-test/.python/bin/celery

正如所料。

我建议您重新运行终端会话(PATH可能出现的问题)。

如果它没有帮助,那么你可以检查你的PATH变量来找到,为什么来自virtualenv的芹菜不可见。

如果PATH没有问题,但问题仍然存在,请尝试从头开始重新创建你的virtualenv。

修改

另一个建议:检查输出:

which celery

它应该指向一些路径,但它也可能是这样的别名:

celery: aliased to /somepath/bin/celery

如果它实际上是别名,那么您需要检查~/.bashrc~/.zshrc)或~/.bash_profile~/.zprofile),甚至/etc/profile.d/*的内容}文件夹。你需要摆脱这个别名。