FROM python:3.9-slim WORKDIR /app # Install system dependencies RUN apt-get update && apt-get install -y \ build-essential \ git \ wget \ libgomp1 \ libgl1 \ libglu1-mesa \ libxrender1 \ libxext6 \ libsm6 \ libice6 \ libxmu6 \ libxi6 \ xvfb \ && rm -rf /var/lib/apt/lists/* # Download binvox RUN wget -O /usr/local/bin/binvox http://www.patrickmin.com/binvox/linux64/binvox && \ chmod +x /usr/local/bin/binvox # Copy requirements and install Python dependencies COPY requirements.txt . RUN pip install --no-cache-dir --upgrade pip && \ pip install --no-cache-dir -r requirements.txt COPY RigNet/ /app/RigNet/ # Copy application code COPY app.py . # Create temp directory RUN mkdir -p /app/temp # Expose port EXPOSE 7860 # Environment variables ENV PYTHONUNBUFFERED=1 ENV GRADIO_SERVER_NAME="0.0.0.0" ENV GRADIO_SERVER_PORT=7860 ENV DISPLAY=:99 # Run application CMD ["python", "-u", "app.py"]