FROM python:3.11-bullseye

WORKDIR /app

# Install system dependencies for GPIO control
RUN apt-get update && apt-get install -y \
    python3-gpiozero \
    python3-pip \
    iputils-ping \
    && rm -rf /var/lib/apt/lists/*

# Copy application
COPY monitor.py .
COPY requirements.txt .

# Install Python dependencies
RUN pip install --no-cache-dir -r requirements.txt

# Create directories for logs and state
RUN mkdir -p /var/log /var/lib/pikvm-monitor

# Run the monitor
CMD ["python3", "monitor.py"]
