Why this Configuration?
- True Data Sovereignty: 100% GDPR-compliant on-premises deployment. You own your configuration and data without vendor lock-in.
- Hardware Agnostic: Optimized and verified across low-power ARM64 SBCs (Raspberry Pi 5) and x86_64 hypervisors (Proxmox VE LXC & VM).
- Engine Freedom: Tested and supported under standard Docker Engine and unprivileged rootless Podman.
- Platform Verification: Tested on Proxmox LXC: docker (stable, 2026-09-14), podman (8.0, 2026-09-14); Proxmox VM: docker (stable, 2026-09-14), podman (8.0, 2026-09-14).
Quick Start (Standalone Docker Compose)
The snippet below is immediately ready to run in any standard Docker or Podman environment:
services:
frigate-configurator:
image: python:3.11-slim
container_name: njorddeploy-frigate-configurator
network_mode: host
volumes:
- "data_root/frigate/config:/app/config:rw"
environment:
- "FRIGATE_RTSP_USERNAME=admin"
- "FRIGATE_RTSP_PASSWORD=ChangeMeSecurePassword123!"
command: >
sh -c "apt-get update && apt-get install -y ffmpeg libglib2.0-0 &&
pip install --no-cache-dir pyyaml onvif-zeep-async zeep psutil &&
python /app/config/frigate_camera_config_tool.py"
frigate:
container_name: njorddeploy-frigate
image: ghcr.io/blakeblackshear/frigate:stable
privileged: true # Required for direct hardware access (e.g., /dev/bus/usb for Coral)
restart: unless-stopped
shm_size: "512mb" # Shared memory for FFmpeg
depends_on:
frigate-configurator:
condition: service_completed_successfully
devices:
- /dev/bus/usb:/dev/bus/usb # For Coral TPU
volumes:
- "data_root/frigate/config:/config:rw"
- "data_root/frigate/media:/media/frigate:rw"
- /etc/localtime:/etc/localtime:ro
ports:
- "8080:5000" # Dynamically mapped Web UI port
- "8080:1935" # Dynamically mapped RTMP re-streaming port
environment:
- "FRIGATE_RTSP_PASSWORD=ChangeMeSecurePassword123!"
networks:
- njorddeploy_net
networks:
njorddeploy_net:
Start the service directly via the command line: docker compose up -d
Configuration & Environment Variables
Key configuration parameters and defaults derived from the NjordDeploy component template:
| Variable | Default Value | Description |
|---|---|---|
|
5000 |
Web UI port for Frigate |
|
1935 |
RTMP streaming port for re-broadcasting streams |
|
changeme |
Secure master password utilized for authenticated camera streams |
Ecosystem & Enterprise Integration
- Reverse Proxy Ingress Ready: Pre-configured for Caddy, Traefik, or Nginx Proxy Manager with automatic Let's Encrypt TLS certificates.
- Zero-Trust Mesh VPN: Seamless integration with WireGuard or Tailscale/Headscale mesh networks for secure remote administration.
- Transactional State Backups: Ready for point-in-time database dumps and container-safe persistent volume freezing.
Effortless Management with NjordDeploy
Deploy, monitor, and update this service with a single click on your own hardware via the NjordDeploy Configurator.