FROM nvidia/cuda:12.5.1-cudnn-runtime-ubuntu24.04 ENV PYTHONDONTWRITEBYTECODE="1" \ PYTHONUNBUFFERED="1" \ DEBIAN_FRONTEND="noninteractive" # Install system dependencies RUN apt-get update && \ apt-get install -y --no-install-recommends \ python3-pip \ python-is-python3 && \ apt-get clean && \ rm -rf /var/lib/apt/lists/* # hadolint ignore=DL3013 RUN python3 -m pip install --no-cache-dir --upgrade pip setuptools wheel WORKDIR /app/ # Download models during build instead of copying from local COPY scripts/model_download.bash /tmp/model_download.bash RUN python3 -m pip install --no-cache-dir huggingface-hub && \ bash /tmp/model_download.bash && \ rm /tmp/model_download.bash # Install CPU requirements COPY requirements.cpu.txt ./ RUN python3 -m pip install --no-cache-dir -r ./requirements.cpu.txt # Install GPU PyTorch requirements COPY requirements.torch.gpu.txt ./ RUN python3 -m pip install --no-cache-dir -r ./requirements.torch.gpu.txt COPY app ./app COPY main.py ./ EXPOSE 8000 ENTRYPOINT ["python3", "-m", "uvicorn", "main:app", "--host", "0.0.0.0", "--port", "8000"]