FROM python:3.12-slim AS builder WORKDIR /builder COPY app/requirements.txt . RUN pip install --no-cache-dir --prefix=/install -r requirements.txt FROM python:3.12-slim RUN adduser --disabled-password --no-create-home appuser WORKDIR /app COPY --from=builder /install /usr/local COPY app/ . USER appuser EXPOSE 8000 CMD ["uvicorn", "main:app", "--host", "0.0.0.0", "--port", "8000"]