FROM python:3.11-slim as builder RUN pip install poetry ENV POETRY_NO_INTERACTION=1 \ POETRY_VIRTUALENVS_IN_PROJECT=1 \ POETRY_VIRTUALENVS_CREATE=1 \ POETRY_CACHE_DIR=/tmp/poetry_cache WORKDIR /app COPY ./pyproject.toml /app RUN poetry install --only=main --no-root && \ rm -rf ${POETRY_CACHE_DIR} FROM python:3.11-slim as runtime WORKDIR /app RUN apt update && \ apt install -y --no-install-recommends libpq5 && \ apt clean && \ rm -rf /var/lib/apt/lists/* env VIRTUAL_ENV=/app/.venv \ PATH="/app/.venv/bin:$PATH" COPY --from=builder ${VIRTUAL_ENV} ${VIRTUAL_ENV} COPY backend /app/backend COPY dependencies.py /app COPY config.sample.yaml /app COPY routers/ /app/routers COPY main.py /app CMD ["python", "./main.py"]