# For more information, please refer to https://aka.ms/vscode-docker-python #FROM python:3.10-slim FROM nvidia/cuda:11.8.0-cudnn8-devel-ubuntu22.04 # Install Python and pip RUN apt-get update && apt-get install -y python3-pip python3-venv # Where we'll copy the code WORKDIR /code # Copy the current directory contents into the container at /code COPY ./requirements.txt /code/requirements.txt # Install pip requirements without venv #RUN pip install --no-cache-dir --upgrade -r /code/requirements.txt # Create a virtual environment and install pip requirements RUN python3 -m venv /code/venv RUN /code/venv/bin/pip install --no-cache-dir --upgrade pip RUN /code/venv/bin/pip install --no-cache-dir --upgrade -r /code/requirements.txt # Set the PATH to include the virtual environment's bin directory ENV PATH="/code/venv/bin:$PATH" # Creates a non-root user with an explicit UID # For more info, please refer to https://aka.ms/vscode-docker-python-configure-containers RUN useradd -m -u 1000 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 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 # During debugging, this entry point will be overridden. For more information, please refer to https://aka.ms/vscode-docker-python-debug #CMD ["app:app", "--host", "0.0.0.0", "--port", "7860"] # Expose port 7860 EXPOSE 7860 ENV GRADIO_SERVER_NAME="0.0.0.0" CMD ["python", "app.py"]