FROM python:3.12-slim

ENV PYTHONDONTWRITEBYTECODE=1 \
    PYTHONUNBUFFERED=1 \
    IDRS_DB_PATH=/app/data/idrs.db

WORKDIR /app

COPY requirements.txt .
RUN pip install --no-cache-dir -r requirements.txt

COPY app ./app
COPY tokenList.json versionAndroid.json ./

RUN mkdir -p /app/data /app/app/static/icons \
    && useradd --system --uid 1000 --create-home idrs \
    && chown -R idrs:idrs /app

USER idrs

EXPOSE 8000

CMD ["uvicorn", "app.main:app", "--host", "0.0.0.0", "--port", "8000"]