Redis
 sql >> Datenbank >  >> NoSQL >> Redis

Ausführen von Supervisord vom Host, Sellerie von einer virtuellen Umgebung (Django-App)

Pfad zur Sellerie-Binärdatei ist myenv/bin/celery während Sie myenv/local/lib/python2.7/site-packages/celery/bin/cel‌‌​​ery verwenden .

Wenn Sie also auf Ihrem Terminal den Befehl versuchen, den Sie an den Supervisor weitergeben (command=xxx), sollten Sie denselben Fehler erhalten.

Sie müssen Ihren command=xxx ersetzen in deiner celery.conf mit

command=/home/mhb11/.virtualenvs/myenv/bin/celery -A myproject.celery -l info

Beachten Sie, dass ich auch -A ersetzt habe Parameter mit der Sellerie-App anstelle der Supervisor-Konfiguration. Diese Sellerie-App ist für Ihr in celery.conf festgelegtes Projektverzeichnis relevant mit

directory = /home/mhb11/somefolder/myproject

Nebenbei , wenn Sie Sellerie mit Django verwenden, können Sie Sellerie mit manage.py von Django verwalten , keine Notwendigkeit, Sellerie direkt aufzurufen. Wie

python manage.py celery worker
python manage.py celery beat

Für Details lesen Sie bitte hier das Intro von Django Celery.