# copied from https://www.martinrichards.me/post/python_poetry_docker/ FROM python:3.13-slim AS base ENV VIRTUAL_ENV=/app/.venv \ PATH="/app/.venv/bin:$PATH" RUN apt-get update && \ apt-get install -y --no-install-recommends \ libfontconfig1 \ libgl1 \ libegl1 \ libglvnd0 \ mesa-vulkan-drivers \ && rm -rf /var/lib/apt/lists/* FROM base AS builder ENV POETRY_NO_INTERACTION=1 \ POETRY_VIRTUALENVS_IN_PROJECT=1 \ POETRY_VIRTUALENVS_CREATE=1 \ POETRY_CACHE_DIR=/tmp/poetry_cache WORKDIR /app RUN pip install poetry COPY pyproject.toml poetry.lock ./ RUN python -m poetry install --no-root && rm -rf $POETRY_CACHE_DIR FROM base AS runtime COPY --from=builder ${VIRTUAL_ENV} ${VIRTUAL_ENV} WORKDIR /app COPY bot.py pyproject.toml .env.prod .env.test ./ COPY assets ./assets COPY scripts ./scripts COPY konabot ./konabot ENV PYTHONPATH=/app CMD [ "python", "bot.py" ]