Example of implementations a simple Django app with Celery tasks, RabbitMQ and Flower UI.
PeriodicTask (every 30 seconds)
SimpleTask1
- queue1SimpleTask2
- queue2
app
: Django app - Web server + basic UI with buttons to run the tasksworker1
: Celery worker/queue1 - worker1 for SimpleTask1worker2
: Celery worker/queue2 - worker2 for SimpleTask2worker3
: Celery worker for periodic taskrabbitmq
: RebbitMQ broker - Celery message brokerflower
: Flower UI - Celery monitoring tool
- Clone the repository
- Install docker and docker-compose
- Run
docker-compose up --build
- Open http://0.0.0.0:8888 in your browser to see the Swagger UI
- Click on the button 1 to run the SimpleTask1
- Click on the button 2 to run the SimpleTask2
- Open http://0.0.0.0:5556 in your browser to see the Flower UI