Files
pizzaandcheese cd75bbf5a0 Initial implementation of reolink-controller
- Go + SQLite + HTMX web GUI for managing Reolink camera automations
- Frigate MQTT subscriber for motion, event, review, and object topics
- Automation engine with time-window filtering and auto-revert timers
- Reolink HTTP API client: floodlight, siren, PTZ, IR mode, OSD timestamp
- Camera discovery via Frigate REST API with RTSP credential parsing
- Multi-stage Docker build with docker-compose for Frigate network integration
2026-05-22 11:38:34 -05:00

37 lines
1.1 KiB
YAML

services:
reolink-controller:
build:
context: .
dockerfile: Dockerfile
container_name: reolink-controller
restart: unless-stopped
ports:
- "${HTTP_PORT:-8080}:8080"
volumes:
- reolink_data:/data
environment:
HTTP_PORT: "8080"
DB_PATH: "/data/reolink.db"
MQTT_HOST: "${MQTT_HOST:-mosquitto}"
MQTT_PORT: "${MQTT_PORT:-1883}"
MQTT_USERNAME: "${MQTT_USERNAME:-}"
MQTT_PASSWORD: "${MQTT_PASSWORD:-}"
MQTT_USE_TLS: "${MQTT_USE_TLS:-false}"
MQTT_CLIENT_ID: "${MQTT_CLIENT_ID:-reolink-controller}"
FRIGATE_TOPIC_PREFIX: "${FRIGATE_TOPIC_PREFIX:-frigate}"
FRIGATE_API_URL: "${FRIGATE_API_URL:-}"
LOG_LEVEL: "${LOG_LEVEL:-info}"
networks:
- frigate_net
volumes:
reolink_data:
networks:
frigate_net:
# Attach to an existing network created by your Frigate docker-compose.
# Change the name to match your actual network, or set external: false
# if running this compose file standalone.
external: true
name: "${FRIGATE_NETWORK:-frigate_default}"