Frigate
Frigate is another docker based install. I run it as part of the compose file that also includes Home Assistant.
Grab the image
It was about 1.7GB.
sudo docker pull ghcr.io/blakeblackshear/frigate:stable
Create a dataset on our ZFS volume
Not strictly necessary, but at the moment I want to keep this data separate until my configuration is stable. This makes it easier to push elsewhere if I want.
If yamato_storage is mounted at /path/to/storage so this will end up in /path/to/storage/frigate-media.
sudo zfs create yamato_zpool/frigate-media
Create a volume for configuration storage
sudo docker volume create frigate-config
Write a docker compose file
TODO
volumes:
frigate-config:
driver: local
name: frigate-config
services:
frigate:
container_name: frigate
image: ghcr.io/blakeblackshear/frigate:stable
cap_add:
- CAP_PERFMON
network_mode: host
restart: unless-stopped
privileged: true
shm_size: "2gb"
volumes:
- '/etc/localtime:/etc/localtime:ro'
- 'frigate-config:/config'
- '/mnt/cf400/frigate-media:/media'
- type: tmpfs
target: /tmp/cache
tmpfs:
size: 1000000000
devices:
- /dev/dri/renderD128
- /dev/dri/card0
- /dev/apex_0
environment:
FRIGATE_RTSP_PASSWORD: <password>
Configure your cameras
Recommendation seems to be to use a main recording stream at full resolution. Then a smaller substream at something like 720p for motion detection. See Cameras.
Write a frigate config
The Getting started guide has it a lot more step by step which is a good way to go to test things.
Once you get a basic config working you can use the web interface (port 5000) to modify the config and restart Frigate.