# Use Python 3.10-slim to meet esm's requirements FROM python:3.10-slim # Set up time zone ENV TZ=UTC RUN ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone # Install system dependencies RUN apt-get update && apt-get install -y \ wget \ git \ && rm -rf /var/lib/apt/lists/* # Set up a new user named "user" with user ID 1000 RUN useradd -m -u 1000 user # Switch to the "user" user USER user # Set home to the user's home directory ENV HOME=/home/user \ PATH=/home/user/.local/bin:$PATH # Set the working directory to the user's home directory (root of your app) WORKDIR $HOME/app # Copy everything from the root of your local directory to the container's working directory COPY --chown=user . . # Install Python dependencies RUN pip install --upgrade pip RUN pip install -r requirements.txt # Simulate NVIDIA driver for Hugging Face Spaces ENV NVIDIA_VISIBLE_DEVICES=all ENV NVIDIA_DRIVER_CAPABILITIES=compute,utility # Set the command to run the Gradio app CMD ["python", "app.py"]