FROM python:3.12-slim

ENV PYTHONDONTWRITEBYTECODE=1 \
    PYTHONUNBUFFERED=1 \
    PIP_NO_CACHE_DIR=1

WORKDIR /app

COPY pyproject.toml README.md ./
COPY src ./src
RUN python -m pip install --upgrade pip && \
    python -m pip install ".[web,cedar]"

RUN useradd --create-home --uid 10001 obsigno && \
    mkdir -p /data && chown -R obsigno:obsigno /data /app
USER obsigno

EXPOSE 8787

CMD ["obsigno-dashboard", "--host", "0.0.0.0", "--port", "8787", "--ledger", "/data/audit.jsonl", "--private-key", "/data/private_key.pem", "--public-key", "/data/public_key.pem"]
