version: '3.8' services: pikvm-monitor: build: . image: pikvm-monitor:latest container_name: pikvm-monitor restart: always privileged: true # Required for GPIO access volumes: - /var/log/pikvm-monitor:/var/log - /var/lib/pikvm-monitor:/var/lib/pikvm-monitor environment: - HOST_IP=${HOST_IP:-192.168.1.10} - GATEWAY_IP=${GATEWAY_IP:-192.168.1.1} - PING_INTERVAL=${PING_INTERVAL:-180} - DOWNTIME_THRESHOLD=${DOWNTIME_THRESHOLD:-15} - POWER_BUTTON_GPIO=${POWER_BUTTON_GPIO:-17} - LONG_PRESS_DURATION=${LONG_PRESS_DURATION:-5} - SHORT_PRESS_DURATION=${SHORT_PRESS_DURATION:-1} - WAIT_BEFORE_REBOOT=${WAIT_BEFORE_REBOOT:-90} - LOG_FILE=/var/log/pikvm-monitor.log logging: driver: "json-file" options: max-size: "10m" max-file: "3" networks: - default networks: default: driver: bridge