FROM python:3.14-alpine

ENV PYTHONDONTWRITEBYTECODE=1 \
    PYTHONUNBUFFERED=1 \
    PIP_NO_CACHE_DIR=1

WORKDIR /app

RUN apk add --no-cache \
        curl \
        freetype \
        libjpeg-turbo \
        zlib \
    && apk add --no-cache --virtual .build-deps \
        build-base \
        freetype-dev \
        libffi-dev \
        libjpeg-turbo-dev \
        zlib-dev

COPY requirements.txt .
RUN pip install -r requirements.txt \
    && apk del .build-deps

COPY app ./app
RUN mkdir -p /app/exports

EXPOSE 8147
CMD ["uvicorn", "app.main:app", "--host", "0.0.0.0", "--port", "8147"]
