# 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 WORKDIR $HOME/app # Copy the current directory contents into the container at $HOME/app setting the owner to the user COPY --chown=user . $HOME/app # Install Python dependencies RUN pip install --upgrade pip RUN pip install -r requirements.txt # # Install ESM # RUN pip install esm # 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", "main.py"]