# syntax=docker/dockerfile:1.7 ARG PYTHON_VERSION=3.14 FROM python:${PYTHON_VERSION}-alpine AS builder ENV PIP_DISABLE_PIP_VERSION_CHECK=1 \ PIP_NO_CACHE_DIR=1 \ PIP_ROOT_USER_ACTION=ignore RUN apk add --no-cache \ build-base \ libffi-dev \ olm-dev WORKDIR /build COPY requirements.txt . RUN python -m venv /opt/venv \ && /opt/venv/bin/pip install --upgrade pip \ && /opt/venv/bin/pip install --no-cache-dir -r requirements.txt FROM python:${PYTHON_VERSION}-alpine AS runtime RUN apk add --no-cache \ olm \ ca-certificates \ && addgroup -g 1000 bot \ && adduser -u 1000 -G bot -h /home/bot -D bot \ && mkdir -p /state \ && chown -R bot:bot /state COPY --from=builder /opt/venv /opt/venv ENV PATH=/opt/venv/bin:$PATH \ PYTHONDONTWRITEBYTECODE=1 \ PYTHONUNBUFFERED=1 \ PYTHONPATH=/app/src WORKDIR /app COPY --chown=bot:bot src/ ./src/ USER bot ENTRYPOINT ["python", "-m", "claude_matrix_bot.reset_watcher"]