unik-ml / Dockerfile
RoniFinTech's picture
gpu
e15aeab
raw
history blame
1 kB
# Use an official CUDA runtime as a parent image
FROM nvidia/cuda:12.2.0-runtime-ubuntu22.04
# Set the working directory to /code
WORKDIR /code
# Install Python
RUN apt-get update && apt-get install -y python3.10 python3-pip
# Copy the current directory contents into the container at /code
COPY ./requirements.txt /code/requirements.txt
# Install requirements.txt
RUN pip install --no-cache-dir --upgrade -r /code/requirements.txt
# 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
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
# Start the FastAPI app on port 7860, the default port expected by Spaces
CMD ["uvicorn", "main:app", "--host", "0.0.0.0", "--port", "7860"]