# Use NVIDIA CUDA base image for GPU support FROM nvidia/cuda:11.8.0-cudnn8-runtime-ubuntu22.04 # Set environment variables ENV DEBIAN_FRONTEND=noninteractive ENV PYTHONUNBUFFERED=1 ENV TORCH_CUDA_ARCH_LIST="6.0 6.1 7.0 7.5 8.0 8.6+PTX" # Install system dependencies RUN apt-get update && apt-get install -y \ python3 \ python3-pip \ python3-dev \ git \ wget \ curl \ build-essential \ cmake \ libgl1-mesa-glx \ libglib2.0-0 \ libsm6 \ libxext6 \ libxrender-dev \ libgomp1 \ libgcc-s1 \ && rm -rf /var/lib/apt/lists/* # Create working directory WORKDIR /app # Copy requirements first (for better Docker layer caching) COPY requirements.txt . # Install Python dependencies RUN pip3 install --no-cache-dir --upgrade pip setuptools wheel RUN pip3 install --no-cache-dir -r requirements.txt # Go back to app directory WORKDIR /app # Copy the application code COPY . . # Set up DepthAnythingV2 #WORKDIR /app/Depth-Anything-V2 #RUN pip3 install -e . #WORKDIR /app # Create directories for models and cache RUN mkdir -p /app/models /root/.cache # Download DepthAnythingV2 weights (you can add this step or mount as volume) # Uncomment the line below if you want to download weights during build # RUN wget -O depth_anything_v2_metric_vkitti_vitl.pth https://huggingface.co/depth-anything/Depth-Anything-V2-Metric-VKITTI-Small/resolve/main/depth_anything_v2_metric_vkitti_vitl.pth # Expose the port EXPOSE 7860 # Set the entry point CMD ["python3", "enhanced_app.py"]