File size: 1,022 Bytes
5b2f23d
 
 
 
 
 
 
 
 
 
 
 
 
 
 
bbc7372
 
 
 
d4d944a
5b2f23d
5962ccd
d4d944a
 
5962ccd
 
 
5b2f23d
5962ccd
d4d944a
5b2f23d
 
5962ccd
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
FROM pytorch/pytorch:2.7.1-cuda12.6-cudnn9-devel
ENV CUDA_HOME=/usr/local/cuda
ENV PATH="${CUDA_HOME}/bin:${PATH}"
ENV LD_LIBRARY_PATH="${CUDA_HOME}/lib64:${LD_LIBRARY_PATH}"
ENV TORCH_CUDA_ARCH_LIST="7.5"
ENV USE_CUDA=1

# Verify CUDA setup
RUN nvcc --version && which nvcc
RUN apt-get update && apt-get install -y \
    git fish tmux curl ffmpeg \
    libgl1-mesa-glx libglib2.0-0 \
    build-essential ninja-build python3.10-venv \
    && rm -rf /var/lib/apt/lists/*
    
# Set thread limits
ENV OMP_NUM_THREADS=4
ENV MKL_NUM_THREADS=4
ENV NUMEXPR_NUM_THREADS=4
WORKDIR /app

# Copy source code (needed for C++ extension builds)
COPY . .

# Build GroundingDINO C++ extensions (system-level build)
# Note: For Gradio SDK, HF manages Python packages via requirements.txt
# This Dockerfile only handles system-level setup
RUN cd src/GroundingDINO && \
    python3 setup.py build_ext --force --inplace || echo "GroundingDINO build failed (non-fatal)"

EXPOSE 7860
ENV GRADIO_SERVER_NAME="0.0.0.0"
CMD ["python3", "app.py"]