...
- Créer le fichier du service /etc/init.d/celeryd, identique à ce fichier https://raw.githubusercontent.com/celery/celery/4.3/extra/generic-init.d/celeryd
- chmod 755 /etc/init.d/celeryd
- Créer le fichier /etc/default/celeryd
Bloc de code |
---|
CELERYD_NODES="worker1" # Nom# Nom du/des worker(s). Ajoutez autant de workers que de tache à executer en paralelle. # exemple : CELERYD_NODES="worker1 worker2 worker3 worker4" CELERYD_NODES="worker1" # Settings de votre Pod DJANGO_SETTINGS_MODULE="pod.settings" # Répertoire source de celery CELERY_BIN="/data/www/%userpod%/.virtualenvs/django_pod/bin/celery" # Application où se situe celery CELERY_APP="pod.main" # Répertoire du projet Pod (où se trouve manage.py) CELERYD_CHDIR="/data/www/%userpod%/django_projects/podv2" # Options à appliquer en plus sur le comportement du/des worker(s) DJANGOCELERYD_SETTINGS_MODULE="pod.settings" # settings de votre Pod CELERY_BIN="/data/www/%userpod%/.virtualenvs/django_pod/bin/celery" # répertoire source de celery CELERY_APP="pod.main" # application où se situe celery CELERYD_CHDIR="/data/www/%userpod%/django_projects/podv2" # répertoire du projet Pod (où se trouve manage.py) CELERYD_OPTS="--time-limit=86400 --concurrency=1 --maxtasksperchild=1" # options à appliquer en plus sur le comportement du/des worker(s) CELERYD_LOG_FILE="/var/log/celery/%N.log" # fichier log CELERYD_PID_FILE="/var/run/celery/%N.pid" # fichier pid CELERYD_USER="%userpod%" # utilisateur système utilisant celery CELERYD_GROUP="nginx" # groupe système utilisant celery CELERY_CREATE_DIRS=1 # si celery dispose du droit de création de dossiers CELERYD_LOG_LEVEL="INFO" # niveauOPTS="--time-limit=86400 --concurrency=1 --maxtasksperchild=1" # Fichier log CELERYD_LOG_FILE="/var/log/celery/%N.log" # Fichier pid du socket CELERYD_PID_FILE="/var/run/celery/%N.pid" # Utilisateur système utilisant celery CELERYD_USER="%userpod%" # Groupe système utilisant celery CELERYD_GROUP="nginx" # Si celery dispose du droit de création de dossiers CELERY_CREATE_DIRS=1 # Niveau d'information qui seront inscrit dans les logs CELERYD_LOG_LEVEL="INFO" |
- Démarrage si nécessaire du service : systemctl start celeryd
Avertissement |
---|
Ayant # Ayant eu des problèmes de droits sur le répertoire contenant les vidéos (qui peuvent être déposés et par le user nginx et par le user Celery), j'ai ajouté l'utilisateur dans le groupe Nginx et j'ai changé quelques droits : [root ~]# mkdir /var/log/celery [root ~]# mkdir /var/run/celery [root ~]# usermod -g nginx %userpod% |
...