FROM ghcr.io/astral-sh/uv:0.12.0 AS uv
FROM python:3.14.6-slim-bookworm

ENV PYTHONDONTWRITEBYTECODE=1 \
    PYTHONUNBUFFERED=1 \
    UV_COMPILE_BYTECODE=1 \
    UV_LINK_MODE=copy \
    MAILOKF_ROOT_DIR=/mailokf \
    PATH=/app/.venv/bin:$PATH

WORKDIR /app
COPY --from=uv /uv /uvx /bin/
COPY pyproject.toml uv.lock README.md LICENSE /app/
COPY src /app/src
RUN uv sync --locked --no-dev --no-editable --extra outlook

RUN useradd --create-home --uid 10001 mailokf \
    && mkdir -p /mailokf \
    && chown -R mailokf:mailokf /mailokf \
    && chmod 0700 /mailokf

VOLUME ["/mailokf"]
USER mailokf
ENTRYPOINT ["mailokf"]
CMD ["daemon"]
