Celery - samanthasgroup/django-webapps GitHub Wiki

🚀 Запуск Celery

Проект использует Celery для реализации перодических задач с Redis в качестве брокера сообщений. Также устанвлен django-celery-beats, поэтому можно управлять задачами и расписанием через админскую панель Джанг.

🐳 Docker Compose

Redis запускается через docker-compose, файл docker-compose.yml находится в корне проекта.
Для запуска Redis:

docker compose up -d

🧪 Локальный запуск

Для локального запуска worker'а и beat'а можно использовать команды:

uv run celery -A celery_config worker --loglevel=info
uv run celery -A celery_config beat -l INFO --scheduler django_celery_beat.schedulers:DatabaseScheduler

Обе команды также доступны в Makefile:

make celery
make celery-beat

🖥️ Сервисы на сервере

На продакшене настроены 3 systemd-сервиса:

  1. docker-compose-redis — сервис Redis, запускается через Docker Compose.
  2. celery — основной worker Celery.
  3. celerybeats — Celery Beat с использованием django-celery-beat.

они стартуют при старте системы