FROM condaforge/miniforge3:latest

WORKDIR /app

ENV PYTHONDONTWRITEBYTECODE=1
ENV PYTHONUNBUFFERED=1
ENV MPLBACKEND=Agg

RUN apt-get update \
    && apt-get install -y --no-install-recommends fontconfig fonts-noto-cjk \
    && fc-cache -fv \
    && rm -rf /var/lib/apt/lists/*

COPY requirements.txt .

RUN conda create -n demo python=3.12 -y \
    && conda run -n demo python -m pip install --no-cache-dir -r requirements.txt \
    && conda clean -afy

COPY final_flask_app_0331_strict_fixed_F.py .
COPY my_survival_forest_model_quxi-10-0331.joblib .
COPY example.xlsx .

RUN mkdir -p data static/images uploads

EXPOSE 5005

CMD ["conda", "run", "--no-capture-output", "-n", "demo", "python", "final_flask_app_0331_strict_fixed_F.py"]
