FROM python:3.12-slim

ENV PYTHONDONTWRITEBYTECODE=1 \
    PYTHONUNBUFFERED=1 \
    PYTHONPATH=/opt/aios/app \
    AIOS_V2_HOST=0.0.0.0 \
    AIOS_V2_PORT=18920 \
    AIOS_V2_STATE_DIR=/var/lib/aios-v2

RUN groupadd --system --gid 12001 aios \
    && useradd --system --uid 12001 --gid aios --home-dir /nonexistent --shell /usr/sbin/nologin aios \
    && install -d -o aios -g aios -m 0750 /opt/aios/app /var/lib/aios-v2

WORKDIR /opt/aios/app
COPY --chown=aios:aios active-runtime/app/ /opt/aios/app/

USER aios:aios
EXPOSE 18920

HEALTHCHECK --interval=15s --timeout=5s --start-period=10s --retries=4 \
  CMD python3 -c "import urllib.request; urllib.request.urlopen('http://127.0.0.1:18920/api/v2/health', timeout=3).read()"

CMD ["python3", "-m", "aios_v2.app"]
