FROM python:3.12-slim AS base

# install uv for installing other python packages faster
RUN pip install uv

# Install flower and celery with uv (faster than pip) at system level (no venv)
RUN uv pip install flower pyamqp --system

CMD ["sh", \
    "-c", \
    "celery --broker=pyamqp://${RABBITMQ_USER}:${RABBITMQ_PASSWORD}@rabbitmq:5672// \
    flower --port=5001 --address=0.0.0.0 --basic_auth=${FLOWER_USER}:${FLOWER_PASSWORD} --url_prefix=services/celery"]