I have a Django / Celery application
services:
django:
build: ./project # path to Dockerfile
command: sh -c "
sleep 3 && gunicorn --bind 0.0.0.0:8000 core_app.wsgi"
volumes:
- ./project:/project
- ./project/static:/project/static
- ./project/media:/project/media
- ./project/logs:/project/logs
expose:
- 8000
env_file:
- ./.env
depends_on:
- db
...
celery:
build: ./project
command: celery -A core_app worker --loglevel=info --concurrency=16
volumes:
- ./project:/usr/src/app
- ./project/media:/project/media
- ./project/logs:/project/logs
env_file:
- .env
environment:
# environment variables declared in the environment section override env_file
- DEBUG=1
- DJANGO_ALLOWED_HOSTS=localhost 127.0.0.1 [::1]
- CELERY_BROKER=redis://redis:6379/0
- CELERY_BACKEND=redis://redis:6379/0
depends_on:
- django
- redis
How to use profiler for my Celery tasks?
I read Celery tasks profiling
Looks like I should use https://github.com/ask/celerymon
Could you please explain how to add profiler to my infrastructure?
I guess it should be somewhere in docker-compose file