## Summary - Upgrade ntfy from v2.11.0 to v2.17.0 (6 minor releases, no breaking changes) - Add reference doc for ntfy service - Add reference doc for frigate service (ntfy's sole producer via frigate-notify) - Update reference index and service-versions.yaml tracking ## Notable upstream changes (v2.12.0–v2.17.0) - **v2.14.0:** Declarative users/ACL config in files - **v2.15.0:** `require-login` flag for topic-level auth - **v2.16.0:** Dead man's switch (heartbeat) notifications, notification update/delete - **v2.17.0:** Priority templating, crash fixes (nil pointer panics) ## Deployment and Testing - [ ] ArgoCD sync ntfy after merge - [ ] Verify ntfy pod healthy with new image - [ ] Send a test notification via `curl -d "test" https://ntfy.ops.eblu.me/test` - [ ] Verify frigate-notify still delivers alerts to ntfy Reviewed-on: https://forge.ops.eblu.me/eblume/blumeops/pulls/201
80 lines
2.5 KiB
Markdown
80 lines
2.5 KiB
Markdown
---
|
|
title: Frigate
|
|
modified: 2026-02-17
|
|
tags:
|
|
- service
|
|
- surveillance
|
|
---
|
|
|
|
# Frigate
|
|
|
|
Open-source network video recorder (NVR) with object detection. Runs cloud-free with all video stored locally on [[sifaka]].
|
|
|
|
## Quick Reference
|
|
|
|
| Property | Value |
|
|
|----------|-------|
|
|
| **URL** | https://nvr.ops.eblu.me |
|
|
| **Tailscale URL** | https://nvr.tail8d86e.ts.net |
|
|
| **Namespace** | `frigate` |
|
|
| **Image** | `ghcr.io/blakeblackshear/frigate:0.16.4-standard-arm64` |
|
|
| **Upstream** | https://github.com/blakeblackshear/frigate |
|
|
| **Manifests** | `argocd/manifests/frigate/` |
|
|
|
|
## Architecture
|
|
|
|
```
|
|
ReoLink Camera (GableCam)
|
|
│ RTSP
|
|
▼
|
|
Frigate pod
|
|
├── go2rtc — RTSP restream proxy
|
|
├── FFmpeg — stream decoding
|
|
├── ONNX detector — object detection (YOLO-NAS-s, CPU)
|
|
├── /media/frigate — NFS recordings (sifaka)
|
|
└── /db — SQLite (local PVC)
|
|
│
|
|
└──→ MQTT (Mosquitto) → frigate-notify → ntfy → mobile
|
|
```
|
|
|
|
## Cameras
|
|
|
|
| Camera | IP | Location | Objects Tracked |
|
|
|--------|----|----------|-----------------|
|
|
| GableCam | `192.168.1.159` | Front gable | person, car, dog, cat, bird |
|
|
|
|
Camera credentials are stored in 1Password and synced via [[external-secrets]] to the `frigate-camera` Secret.
|
|
|
|
## Detection
|
|
|
|
Object detection uses ONNX with a YOLO-NAS-s model running on CPU (ARM64). The model file lives on the NFS recordings volume at `/media/frigate/models/yolo_nas_s.onnx`.
|
|
|
|
A `driveway_entrance` zone is configured for alert filtering — only detections in this zone trigger review alerts.
|
|
|
|
## Retention
|
|
|
|
| Type | Duration | Mode |
|
|
|------|----------|------|
|
|
| Continuous recording | 3 days | all |
|
|
| Alert clips | 30 days | active objects |
|
|
| Detection clips | 14 days | motion |
|
|
| Snapshots | 14 days | — |
|
|
|
|
## Storage
|
|
|
|
| Mount | Backend | Size |
|
|
|-------|---------|------|
|
|
| `/media/frigate` | NFS PV on [[sifaka]] (`/volume1/frigate`) | 2 Ti |
|
|
| `/db` | Local PVC (`frigate-database`) | SQLite |
|
|
| `/dev/shm` | Memory-backed `emptyDir` | 256 Mi |
|
|
|
|
## Alerting (frigate-notify)
|
|
|
|
A separate **frigate-notify** pod (`ghcr.io/0x2142/frigate-notify:v0.3.5`) subscribes to Frigate's MQTT events via Mosquitto and pushes alerts to [[ntfy]] on the `frigate-alerts` topic. Alert messages include action buttons linking back to the Frigate review UI.
|
|
|
|
## Related
|
|
|
|
- [[ntfy]] - Push notification delivery
|
|
- [[sifaka]] - NAS storage for recordings
|
|
- [[observability]] - Prometheus metrics at `/api/metrics`
|
|
- [[operationalize-reolink-camera]] - Original deployment plan
|