当我应该 运行 virtualenv 中的 django 中的芹菜时如何使用主管?

how to use supervisor when I should running a celery in django which is in a virtualenv?

昨天用nginx、uwsgi、celery、supervisor部署了一个Django项目。一切似乎都很好。

但是我有一些问题。

总的来说,我这次部署了一个Django项目,使用的是本地python安装,但是如果一定要在虚拟环境下使用python,怎么办呢?

例如,我编写了一些任务(使用 django-celery),django 站点将使用这些任务来控制一些定时任务,以及基于 python3 的 django 项目(python3环境在 virtualenv 中)。

所以 celery 应该被 python3 使用,它在 virtualenv 中,而不是本地 python 环境中。

这意味着如果我将主管中的命令设置为:

command=python ****/manage.py celery 

那么就会出错

uwsgi对此有一些设置,我可以在其中设置virtualenv的路径。

但是在 supervisor 中,我看不到一些设置或一些使用 virtualenv 的方法。

请帮忙?

在命令中包含虚拟环境的路径:

command=/path/to/venv/bin/python celery worker