Frigate NVR Made Simple: Step-by-Step Docker Installation for Your CCTV Smart Home (Raspberry Pi Compatible)

Master Your Surveillance: How to Install Frigate NVR System with Docker in Minutes! Best for Smart Homes!

Frigate NVR Made Simple: Step-by-Step Docker Installation for Your CCTV Smart Home (Raspberry Pi Compatible)

Frigate CCTV is an innovative free open-source Network Video Recorder (NVR) system that's revolutionizing home surveillance with its powerful AI capabilities and seamless integration with popular smart home platforms.

What Sets Frigate CCTV Apart?

Frigate CCTV isn't just another security camera system – it's a sophisticated AI-powered solution designed to provide real-time object detection and effortless management of multiple camera streams.

Beyond its rich feature set, Frigate also works on SBCs (Single board computers) such as Raspberry Pi 3 and 4, as well as Rockchip and several other SBC.

Let's dive into the key features that make Frigate CCTV a game-changer for smart home enthusiasts:

1. AI-Powered Detection

At the heart of Frigate CCTV is its advanced object detection capabilities. Using state-of-the-art AI algorithms, the system can identify and track various objects in real-time, including:

  • People
  • Cars
  • Animals

This intelligent detection allows for more accurate alerts and reduces false alarms, ensuring you're notified only when it matters most.

2. Broad Camera Compatibility

Frigate CCTV supports RTSP (Real-Time Streaming Protocol) streams, making it compatible with a wide range of IP cameras. This flexibility allows you to use existing hardware or choose from various camera options to suit your specific needs.

19 Open-source and Free IP Camera Software for Windows, Linux, macOS, and Mobile
IP Camera software is used for managing and monitoring IP cameras, which are digital video cameras that can send and receive data via the internet. IP Camera apps are software applications that allow users to access and control their IP cameras from a smartphone or tablet. One of the main

3. Seamless Home Assistant Integration

For smart home aficionados, Frigate CCTV's integration with Home Assistant is a standout feature. Through MQTT (Message Queuing Telemetry Transport), Frigate can:

  • Send real-time alerts to your Home Assistant dashboard
  • Trigger custom automations based on detected events
  • Provide a centralized hub for managing your entire smart home security setup
Self-Host Your Smart Home: 11 Free Automation Systems Compatible with Raspberry Pi
As the concept of smart homes has transitioned from a futuristic idea to a practical reality for many homeowners. A smart home integrates various devices and systems to enhance convenience, efficiency, and security, allowing homeowners to control everything from lighting and heating to security systems and appliances—all through a

4. Optimized Performance with Hardware Acceleration

The system is designed to make the most of your hardware. It supports acceleration via:

  • Coral TPU (Tensor Processing Unit)
  • NVIDIA GPUs

This hardware acceleration ensures smooth performance, even when processing multiple high-resolution video streams simultaneously.

5. Intelligent Recording Management

Gone are the days of sifting through hours of footage. Frigate CCTV intelligently saves and categorizes events, making it easy to:

  • Quickly access relevant recordings
  • Save storage space by focusing on important events
  • Create a searchable database of detected objects and activities

6. User-Friendly Web Interface

Frigate CCTV comes with an intuitive web-based dashboard that allows you to:

  • Monitor live camera streams
  • Adjust detection settings
  • Review recorded events
  • Manage system configurations

All of this is accessible from any device with a web browser, giving you complete control over your home security system from anywhere.

Setup Frigate on your systems

In this tutorial, we’ll walk you through how to install Frigate, an open-source CCTV NVR system that leverages real-time AI object detection, using Docker.

Frigate is powerful, efficient, and offers seamless integration with Home Assistant. Follow along and set up your smart surveillance system hassle-free.


Prerequisites

Before diving into installation, ensure the following:

  1. Docker installed: Install Docker.
  2. NVIDIA GPU (Optional): If you plan to accelerate object detection with CUDA.
  3. Supported Camera(s): RTSP-compatible cameras are recommended.
  4. Configuring MQTT Broker (Optional but Recommended): For Home Assistant and alert functionality.

Step 1: Prepare Docker Environment

Update your system’s packages and install Docker if it’s not already installed:

sudo apt update && sudo apt upgrade -y
sudo apt install docker.io docker-compose -y

Start and enable Docker:

sudo systemctl start docker
sudo systemctl enable docker

Step 2: Create Configuration Directory

Create a folder to store Frigate configuration and recordings:

mkdir -p ~/frigate/config

Create a basic config.yml file inside the ~/frigate/config directory:

mqtt:
  host: 192.168.x.x  # Replace with your MQTT broker's IP address
cameras:
  front_door:
    ffmpeg:
      inputs:
        - path: rtsp://<camera_ip>/stream
          roles:
            - detect
    detect:
      width: 1280
      height: 720

Make sure to replace <camera_ip> with your actual camera's IP address. This configuration is a minimal setup to detect movement from a single camera.


Step 3: Pull the Frigate Docker Image

Pull the latest Frigate Docker image:

docker pull blakeblackshear/frigate:stable-amd64

If you’re using NVIDIA GPU for acceleration, use the following image instead:

docker pull blakeblackshear/frigate:stable-nvidia

Other Docker Images for Frigate

Note that there is other images for Frigate, some are official and the others are provided and maintained by the community:

The official docker image tags for the current stable version are:

  • stable - Standard Frigate build for amd64 & RPi Optimized Frigate build for arm64
  • stable-standard-arm64 - Standard Frigate build for arm64
  • stable-tensorrt - Frigate build specific for amd64 devices running an nvidia GPU

The community supported docker image tags for the current stable version are:

  • stable-tensorrt-jp5 - Frigate build optimized for nvidia Jetson devices running Jetpack 5
  • stable-tensorrt-jp4 - Frigate build optimized for nvidia Jetson devices running Jetpack 4.6
  • stable-rk - Frigate build for SBCs with Rockchip SoC
  • stable-rocm - Frigate build for AMD GPUs and iGPUs, all drivers
    • stable-rocm-gfx900 - AMD gfx900 driver only
    • stable-rocm-gfx1030 - AMD gfx1030 driver only
    • stable-rocm-gfx1100 - AMD gfx1100 driver only


Step 4: Launch Frigate with Docker Compose

Create a docker-compose.yml file inside the ~/frigate/ directory:

version: '3.9'
services:
  frigate:
    container_name: frigate
    image: blakeblackshear/frigate:stable-amd64  # Use stable-nvidia for GPU version
    privileged: true
    restart: unless-stopped
    shm_size: '64mb'  # Increase if necessary
    volumes:
      - /dev/bus/usb:/dev/bus/usb  # Optional for Coral accelerators
      - ~/frigate/config:/config
      - ~/frigate/media:/media/frigate
      - /etc/localtime:/etc/localtime:ro
    ports:
      - "5000:5000"  # Frigate Web UI
      - "1935:1935"  # RTMP Stream
    environment:
      - FRIGATE_RTSP_PASSWORD=your_password  # Replace with a secure password

Launch the container with:

docker-compose up -d

If you are looking for more sophisticated setup to manage system cache, devices and cameras, you may check for the following Docker compose file:

version: "3.9"
services:
  frigate:
    container_name: frigate
    privileged: true # this may not be necessary for all setups
    restart: unless-stopped
    image: ghcr.io/blakeblackshear/frigate:stable
    shm_size: "64mb" # update for your cameras based on calculation above
    devices:
      - /dev/bus/usb:/dev/bus/usb # Passes the USB Coral, needs to be modified for other versions
      - /dev/apex_0:/dev/apex_0 # Passes a PCIe Coral, follow driver instructions here https://coral.ai/docs/m2/get-started/#2a-on-linux
      - /dev/video11:/dev/video11 # For Raspberry Pi 4B
      - /dev/dri/renderD128:/dev/dri/renderD128 # For intel hwaccel, needs to be updated for your hardware
    volumes:
      - /etc/localtime:/etc/localtime:ro
      - /path/to/your/config:/config
      - /path/to/your/storage:/media/frigate
      - type: tmpfs # Optional: 1GB of memory, reduces SSD/SD Card wear
        target: /tmp/cache
        tmpfs:
          size: 1000000000
    ports:
      - "8971:8971"
      # - "5000:5000" # Internal unauthenticated access. Expose carefully.
      - "8554:8554" # RTSP feeds
      - "8555:8555/tcp" # WebRTC over tcp
      - "8555:8555/udp" # WebRTC over udp
    environment:
      FRIGATE_RTSP_PASSWORD: "password"

Step 5: Access Frigate Web Interface

Once the container is up, open your browser and navigate to:

http://<your-server-ip>:5000  

You should see the Frigate web UI, where you can manage your cameras and view live streams.


Step 6: Verify Configuration and Logs

Check the container logs to ensure everything is working properly:

docker logs -f frigate

Make sure there are no errors related to camera streams or object detection.


Step 7: Integrate with Home Assistant (Optional)

  1. Install the Frigate Integration in Home Assistant.
  2. Add your MQTT broker details to both Frigate and Home Assistant for seamless communication.
  3. Create automations in Home Assistant based on detected objects.

Step 8: Troubleshooting Tips

  • Video Stream Not Showing: Verify the RTSP URL and camera settings.
  • High CPU Usage: Consider using Coral USB Accelerator or NVIDIA GPU for offloading.
  • Permission Issues: Ensure Docker has access to the necessary devices and directories.

Congratulations! You now have a fully functional Frigate CCTV NVR system running on Docker. With Frigate’s advanced AI-based detection and easy integration with Home Assistant, you can monitor your home or office more efficiently than ever.


Wrapping up!

Frigate CCTV represents the future of home surveillance – open-source, AI-powered, and seamlessly integrated with the smart home ecosystem. Whether you're a tech enthusiast looking to upgrade your security setup or a homeowner seeking a more intelligent way to protect your property, Frigate CCTV offers a powerful and flexible solution that's worth exploring.

Ready to take your home security to the next level? Give Frigate CCTV a try and experience the peace of mind that comes with cutting-edge, AI-driven surveillance.

If you encounter any issues, refer to the official documentation for further guidance. Happy surveillance! 🚀

More CCTV, NVR and IP-Camera Solutions

16 Free CCTV Pentesting Tools To Test Your CCTV Cameras and Feeds Security
While there are many commercial and open-source CCTV systems available for home and business security, many people are unaware that these systems also require security testing. This is crucial to ensure that no unauthorized users have logged in or are accessing unsecured CCTV camera feeds. Best 20 Free Open-source CCTV,
14 Open Source Free NVR Solutions For Home and Business Security
Network Video Recorder
Best 20 Free Open-source CCTV, NVR and DVR solutions
CCTV or closed-circuit television system makes use of camera networks and monitor to watch and monitor of interior and exterior of a property. Companies, museums, art galleries, and houses are using CCTV networks for video surveillance and security. There are dozens of commercial CCTV software packages.However, as they vary
19 Open-source and Free IP Camera Software for Windows, Linux, macOS, and Mobile
IP Camera software is used for managing and monitoring IP cameras, which are digital video cameras that can send and receive data via the internet. IP Camera apps are software applications that allow users to access and control their IP cameras from a smartphone or tablet. One of the main
24 Open-source Free RTSP Viewers and Media Servers for IP-Camera Streams
RTMP (Real-Time Messaging Protocol) and RTSP (Real-Time Streaming Protocol) viewers and servers are software tools that facilitate the viewing, streaming, and recording of media content, particularly IP-camera streams. RTMP is a protocol commonly used for streaming audio, video, and data over the internet. It is widely supported by various media

Resources

Frigate NVR
NVR with realtime local object detection for IP cameras
GitHub - blakeblackshear/frigate: NVR with realtime local object detection for IP cameras
NVR with realtime local object detection for IP cameras - blakeblackshear/frigate
Introduction | Frigate
A complete and local NVR designed for Home Assistant with AI object detection. Uses OpenCV and Tensorflow to perform realtime object detection locally for IP cameras.








Open-source Apps

9,500+

Medical Apps

500+

Lists

450+

Dev. Resources

900+

Read more