| # QEMU Web Interface Dockerfile | |
| FROM python:3.12-slim | |
| # Install system dependencies | |
| RUN apt-get update && \ | |
| apt-get install -y qemu-system-x86 qemu-utils libvirt-daemon-system libvirt-clients && \ | |
| apt-get clean && rm -rf /var/lib/apt/lists/* | |
| # Set workdir | |
| WORKDIR /app | |
| # Copy QEMU manager and web interface code | |
| COPY . /app | |
| # Install Python dependencies | |
| RUN pip install --no-cache-dir -r requirements.txt | |
| # Make the entire /app directory fully writeable for all users | |
| RUN chmod -R 777 /app | |
| # Ensure the app runs as the same user as the Space UI | |
| RUN useradd -m -u 1000 user | |
| USER user | |
| # Expose web interface port (adjust as needed) | |
| EXPOSE 8080 | |
| # Default command to run the QEMU web interface | |
| CMD ["python", "qemu/web_interface.py"] |