|
|
||
|---|---|---|
| README.md | ||
| arch_install.sh | ||
README.md
Frigate NVR on Arch Linux with SMB Storage
Overview
Self-hosted Frigate NVR running on Arch Linux using Docker and SMB-backed storage for recordings.
Current deployment includes:
- Arch Linux
- Docker / Docker Compose
- Frigate 0.17+
- Amcrest IP cameras
- SMB network storage
- go2rtc stream restreaming
- ONVIF camera discovery
Features
- Continuous camera recording
- Motion detection
- Snapshot capture
- Multi-camera support
- SMB/NAS storage
- ONVIF camera integration
- RTSP restreaming through go2rtc
- Home Assistant integration ready
Hardware
Cameras
| Name | IP Address |
|---|---|
| Front | 10.28.24.141 |
| PTZ 1 | 10.28.24.142 |
Network Ports
| Port | Service |
|---|---|
| 8971 | Frigate Web UI |
| 8554 | RTSP Restream |
| 8555 | WebRTC |
| 1984 | go2rtc API |
Storage
Recordings are stored on an SMB-mounted network share.
Example mount:
//NAS-IP/recordings /mnt/frigate-recordings cifs credentials=/etc/samba/frigate-smb.cred,uid=1000,gid=1000,_netdev,x-systemd.automount 0 0
Verify mount:
mount | grep frigate
Frigate Configuration
Configuration file:
/opt/frigate/config/config.yml
Camera Streams
Front Camera
Main Stream:
rtsp://admin:PASSWORD@10.28.24.141:554/cam/realmonitor?channel=1&subtype=0
Sub Stream:
rtsp://admin:PASSWORD@10.28.24.141:554/cam/realmonitor?channel=1&subtype=1
PTZ Camera
Main Stream:
rtsp://admin:PASSWORD@10.28.24.142:554/cam/realmonitor?channel=1&subtype=0
Sub Stream:
rtsp://admin:PASSWORD@10.28.24.142:554/cam/realmonitor?channel=1&subtype=1
Example Configuration
mqtt:
enabled: false
version: 0.17-0
record:
enabled: true
snapshots:
enabled: true
go2rtc:
streams:
front:
- rtsp://admin:PASSWORD@10.28.24.141:554/cam/realmonitor?channel=1&subtype=0
front_sub:
- rtsp://admin:PASSWORD@10.28.24.141:554/cam/realmonitor?channel=1&subtype=1
ptz_1:
- rtsp://admin:PASSWORD@10.28.24.142:554/cam/realmonitor?channel=1&subtype=0
ptz_1_sub:
- rtsp://admin:PASSWORD@10.28.24.142:554/cam/realmonitor?channel=1&subtype=1
cameras:
front:
enabled: true
ffmpeg:
inputs:
- path: rtsp://127.0.0.1:8554/front_sub
roles:
- detect
- path: rtsp://127.0.0.1:8554/front
roles:
- record
- audio
detect:
width: 640
height: 480
fps: 5
ptz_1:
enabled: true
ffmpeg:
inputs:
- path: rtsp://127.0.0.1:8554/ptz_1_sub
roles:
- detect
- path: rtsp://127.0.0.1:8554/ptz_1
roles:
- record
- audio
detect:
width: 640
height: 480
fps: 5
Docker Management
Restart:
cd /opt/frigate
sudo docker compose restart
View Logs:
sudo docker logs -f frigate
Container Status:
sudo docker ps
Troubleshooting
Verify RTSP Stream
ffprobe "rtsp://admin:PASSWORD@CAMERA_IP:554/cam/realmonitor?channel=1&subtype=0"
Verify SMB Mount
df -h
mount | grep cifs
Verify Frigate Configuration
sudo docker logs frigate --tail 100
Future Improvements
- NVIDIA hardware decoding
- Home Assistant integration
- Object detection acceleration
- Cloudflare Tunnel remote access
- Mobile notifications
- Recording retention policies
- Automatic backups
- GPU-based inference