FROM python:3.12-slim
RUN groupadd --gid 10001 app \
 && useradd --uid 10001 --gid app --no-create-home --shell /usr/sbin/nologin app \
 && mkdir /data && chown app:app /data
WORKDIR /srv
COPY app/ ./
USER 10001:10001
ENV HOST=0.0.0.0 AUDIT_PATH=/data/audit.jsonl PYTHONUNBUFFERED=1 PYTHONDONTWRITEBYTECODE=1
EXPOSE 8200 8201 8202
HEALTHCHECK --interval=3s --timeout=3s --retries=10 CMD ["python", "-c", "import urllib.request; urllib.request.urlopen('http://127.0.0.1:8200/api/health', timeout=2)"]
CMD ["python", "server.py"]
