# 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 \ build-essential \ cmake \ git \ && 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 --no-cache-dir 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 RUN python -m playwright install --with-deps chromium 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" ]