FROM continuumio/miniconda3:23.11.1-0 WORKDIR /app # Copy dependency lists first for better cache COPY requirements.txt /tmp/requirements.txt # Install runtime conda env, then pip install Python deps RUN conda update -n base -c defaults conda -y && \ conda create -y -n appenv python=3.10 -c conda-forge pillow && \ /opt/conda/envs/appenv/bin/pip install --no-cache-dir -r /tmp/requirements.txt ENV PATH=/opt/conda/envs/appenv/bin:$PATH # Copy app code COPY . /app # copy entrypoint and make executable COPY docker-entrypoint.sh /app/docker-entrypoint.sh RUN chmod +x /app/docker-entrypoint.sh EXPOSE 7860 ENTRYPOINT ["/app/docker-entrypoint.sh"] # Launch Gradio UI by default (serves app.py) CMD ["conda","run","-n","appenv","--no-capture-output","python","app.py"]