Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Off Topic
    4. Proxmox
    5. Proxmox LXC mit Frigate

    NEWS

    • [erledigt] 15. 05. Wartungsarbeiten am ioBroker Forum

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    Proxmox LXC mit Frigate

    This topic has been deleted. Only users with topic management privileges can see it.
    • Wal
      Wal Developer last edited by Wal

      Nachdem ich mir eine CORAL M.2 ACCELERATOR MIT DUAL EDGE TPU und ein Dual Edge TPU Adapter bestellt habe, wurde Frigate auf Proxmox installiert.

      Skript von TTeck
      Proxmox-Console Ubuntu Lunar installieren:

      bash -c "$(wget -qLO - https://github.com/tteck/Proxmox/raw/main/ct/ubuntu.sh)"
      
      • Use Default Settings? -> Advanced
      • Choose Distribution: -> ubuntu
      • Choose Version -> 23.04 Lunar
      • Choose Type -> 1 Unprivileged
      • Set Disk Size in GB -> 4GB, wenn Videos lokal abgelegt werden sollen erhöhen.
      • Allocate CPU Cores -> min. 2, je mehr Kameras desto mehr Cores
      • Allocate Ram in MiB -> min. 2048, je mehr Kameras desto mehr Speicher
      • Set a Static IPv4 -> besser ist es
      • Disable IPv6? -> besser ist es
      • Enable Root SSH Access? -> nein

      FrigateLXC als root:

      adduser frigate
      adduser frigate sudo
      exit
      

      FrigateLXC als User frigate:

      sudo apt-get install ca-certificates curl gnupg
      sudo install -m 0755 -d /etc/apt/keyrings
      curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
      sudo chmod a+r /etc/apt/keyrings/docker.gpg 
      echo "deb [arch="$(dpkg --print-architecture)" signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu "$(. /etc/os-release && echo "$VERSION_CODENAME")" stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
      sudo apt update
      sudo apt install docker-ce docker-ce-cli containerd.io docker-compose-plugin
      sudo adduser frigate docker
      exit
      

      FrigateLXC als User frigate neu anmelden:

      docker run -d -p 9000:9000 --name portainer --restart always -v /var/run/docker.sock:/var/run/docker.sock -v portainer_data:/data portainer/portainer-ce
      sudo systemctl status docker
      sudo /lib/systemd/systemd-sysv-install enable docker
      mkdir frigate
      cd frigate
      nano docker-compose.yml
      

      docker-compose.yml:

      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
          cap_add:
            - CAP_PERFMON
          devices:
            - /dev/apex_0:/dev/apex_0
            - /dev/apex_1:/dev/apex_1
            - /dev/dri/renderD128 # for intel hwaccel, needs to be updated for your hardware
          volumes:
            - /etc/localtime:/etc/localtime:ro
            - /home/frigate/frigate/config.yml:/config/config.yml
            - /media/frigate:/media/frigate
            - type: tmpfs # Optional: 1GB of memory, reduces SSD/SD Card wear
              target: /tmp/cache
              tmpfs:
                size: 1000000000
          ports:
            - "5000:5000"
            - "1935:1935" # RTMP feeds
      

      Achtung ab Frigate 13 muss der komplette Frigate-Pfad angegeben werden nicht die config.yml:

      - /home/frigate/frigate:/config
      
      nano config.yml
      

      die minimale config.yml:

      mqtt:
        enabled: False
      
      cameras:
        back:
          ffmpeg:
            inputs:
              - path: rtsp://User:PW@192.168.69.162:554/h264Preview_01_main
                roles:
                  - detect
      
          detect:
            enabled: False
            width: 640
            height: 480
      

      docker starten:

      docker compose up -d
      exit
      
      http://deineIP:5000
      

      Screenshot 2023-04-14 162742.png

      da_Woody E 3 Replies Last reply Reply Quote 2
      • Wal
        Wal Developer last edited by Wal

        Intel Hardwarebeschleunigung aktivieren
        Im Proxmox-Host :

        nano /etc/udev/rules.d/99-intel-chmod666.rules
        

        einfügen :

        KERNEL=="renderD128", MODE="0666"
        

        In der Container Config einfügen:

        lxc.cgroup2.devices.allow: c 226:128 rwm
        lxc.mount.entry: /dev/dri/renderD128 dev/dri/renderD128 none bind,optional,create=file
        

        Auf dem Client
        In die config.yml unter ffmpeg einfügen:

        ffmpeg:
              hwaccel_args: preset-vaapi
              inputs:
        

        In die docker-compose.yml: einfügen:

            devices:
              - /dev/dri/renderD128 # for intel hwaccel, needs to be updated for your hardware
        

        Inference Speed
        durch

        detectors:
          ov:
            type: openvino
            device: AUTO
            model:
              path: /openvino-model/ssdlite_mobilenet_v2.xml
        
        model:
          width: 300
          height: 300
          input_tensor: nhwc
          input_pixel_format: bgr
          labelmap_path: /openvino-model/coco_91cl_bkgr.txt
        

        als Detector ging der Inference Speed von 53ms auf 9,91ms zurück, was immer das bedeutet. 😉


        Coral Dual Edge TPU

        Im Proxmox Host:
        Die Kernel-Version feststellen, die steht bei mir in der Shellkosole nach dem Login und die Kernelheader installieren.

        apt install pve-headers-5.15.104-1-pve
        

        Die Coral Treiber installieren und die LXC-Config anpassen.

        sh -c "echo 'SUBSYSTEM==\"apex\", MODE=\"0660\", GROUP=\"apex\"' >> /etc/udev/rules.d/65-apex.rules"
        curl https://packages.cloud.google.com/apt/doc/apt-key.gpg | apt-key add -
        echo "deb https://packages.cloud.google.com/apt coral-edgetpu-stable main" | tee /etc/apt/sources.list.d/coral-edgetpu.list
        apt update
        apt install gasket-dkms libedgetpu1-std
        nano /etc/pve/lxc/***.conf
        

        einfügen:

        lxc.cgroup2.devices.allow: c 120:0 rwm
        lxc.mount.entry: /dev/apex_0 dev/apex_0 none bind,optional,create=file
        lxc.mount.entry: /dev/apex_1 dev/apex_1 none bind,optional,create=file
        

        danach

        reboot
        

        Jetzt geht es in dem Frigate LXC weiter:

        nano docker-compose.yml
        

        einfügen:

        devices:
              - /dev/apex_0:/dev/apex_0
              - /dev/apex_1:/dev/apex_1
        

        meine docker-compose.yml sieht so aus:

        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/apex_0:/dev/apex_0
              - /dev/apex_1:/dev/apex_1
              - /dev/dri/renderD128 # for intel hwaccel, needs to be updated for your hardware
            volumes:
              - /etc/localtime:/etc/localtime:ro
              - /home/frigate/config/config.yml:/config/config.yml:ro
              - /home/frigate/frigate:/media/frigate
              - type: tmpfs # Optional: 1GB of memory, reduces SSD/SD Card wear
                target: /tmp/cache
                tmpfs:
                  size: 1000000000
            ports:
              - "5000:5000"
              - "1935:1935" # RTMP feeds
        

        jetzt die config.yml:

        nano ./config/config.yml
        

        einfügen:

        detectors:
          coral1:
            type: edgetpu
            device: pci:0
          coral2:
            type: edgetpu
            device: pci:1
        

        frigate LXC neu starten, fertg!

        1 Reply Last reply Reply Quote 0
        • Wal
          Wal Developer last edited by Wal

          Heute habe ich meine Kamera von der Haustür eingebunden.
          Es ist eine USB Kamera von Logitech die über MJPG-Streamer auf einem RPI4 2GB Ram angeschlossen ist.
          Den Stream konnte ich nicht direkt in Frigate nutzen, sondern musste über go2rtc erst umgewandelt werden.
          Die CPU-Last stieg dadurch direkt von 0-3% auf 28% auf einem Intel i5 6500.

          go2rtc:
            streams:
              doorbell:
                - http://192.168.144.130:9100/?action=stream
                - ffmpeg:doorbell#video=h264#hardware
          
          cameras:
            doorbell:
              ffmpeg:
               hwaccel_args: preset-vaapi
                inputs:
                  - path: rtsp://127.0.0.1:8554/doorbell
                    roles:
                      - detect
          
          1 Reply Last reply Reply Quote 0
          • Wal
            Wal Developer last edited by Wal

            Am Proxmox-Server habe ich eine USB-HDD für Templates und Backups angeschlossen,
            die wurde heute für Frigate als Datenspeicher mit eingebunden.
            Screenshot 2023-04-17 142646.jpg

            Auf der USB-Platte den Ordner frigate erzeugen.
            In der Frigate LXC-Config auf dem Host je nach euren Mountnamen hinzufügen:

            mp0: /media/usbhdd/frigate,mp=/root/frigate
            

            damit ist der Ordner frigate nach dem LXC-Neustart auf /root/frigate gemountet.

            In der Docker-Config muss jetzt noch der Ordner als Datenspeicher eingerichtet werden:

            nano docker-compose.yml
            
                volumes:
                  - /etc/localtime:/etc/localtime:ro
                  - /root/config/config.yml:/config/config.yml:ro
                  - /root/frigate:/media/frigate
            

            habt ihr oben die Docker-Config genutzt, muss hier nichts verändert werden.
            Screenshot 2023-04-17 143917.jpg

            1 Reply Last reply Reply Quote 0
            • da_Woody
              da_Woody @Wal last edited by

              @wal Proxmox und dann Docker?

              Wal 1 Reply Last reply Reply Quote 0
              • Wal
                Wal Developer @da_Woody last edited by

                @da_woody sagte in Proxmox LXC mit Frigate:

                @wal Proxmox und dann Docker?

                Ja, Frigate gibt es nur im Docker-Container und ich habe einen Proxmox-Server.

                da_Woody 1 Reply Last reply Reply Quote 0
                • da_Woody
                  da_Woody @Wal last edited by

                  @wal klar, ich hab auch einen prox, aber dann da docker?
                  durch die brust ins knie? aber ok, wenn man's mag...
                  nicht bös gemeint...

                  Wal 1 Reply Last reply Reply Quote 1
                  • Wal
                    Wal Developer @da_Woody last edited by

                    @da_woody ,
                    ich würde es auch lieber anders machen, geht halt nicht.
                    Geschwindigkeitsmäßig und Ressourcenmäßig sehe ich jetzt keine Einschränkungen.
                    Evtl. gibt es mal eine Lösung, da einige Frigate in Proxmox nutzen laut Github.

                    da_Woody 1 Reply Last reply Reply Quote 0
                    • da_Woody
                      da_Woody @Wal last edited by

                      @wal Running Frigate in a VM on top of Proxmox, ESXi, Virtualbox, etc. is not recommended.
                      stimmt mich sültsam. 236 issues sind auch nicht das wahre. aber ok, wenn du das so magst, wegen der funktionen...
                      meine bedürfnisse sind mit motion gedeckt.

                      Wal uweklatt 2 Replies Last reply Reply Quote 0
                      • Wal
                        Wal Developer @da_Woody last edited by

                        @da_woody ,
                        ich finde die Objekterkennung genial und konnte nach 3 Tagen noch kein Issues entdecken. 🙂

                        H da_Woody 2 Replies Last reply Reply Quote 0
                        • H
                          Hansi1234 @Wal last edited by

                          @wal wieviel cams hast du eingebunden?

                          Wal 1 Reply Last reply Reply Quote 0
                          • da_Woody
                            da_Woody @Wal last edited by

                            @wal nuja:
                            5f6e6810-54ec-414a-b47b-3ddff42bad83-grafik.png

                            Wal 1 Reply Last reply Reply Quote 0
                            • Wal
                              Wal Developer @da_Woody last edited by

                              @da_woody,
                              ich glaube dir, nur wie ich frigate im Moment nutze habe ich noch keinen Fehler gefunden.

                              1 Reply Last reply Reply Quote 0
                              • Wal
                                Wal Developer @Hansi1234 last edited by

                                @hansi1234 sagte in Proxmox LXC mit Frigate:

                                @wal wieviel cams hast du eingebunden?

                                Ich habe jetzt nur die Türspechstelle incl. transcoding in einen rtsp Stream und eine billige China Cam zum testen eingebunden. Habe heute bei Ebay eine refurbished Reolink rlc-810a zum testen gekauft. Wenn die was sind werde ich 6 Stück in Neu ums Haus montieren. Meine 2 Mountainbikes haben letztes Jahr Beine bekommen.

                                1 Reply Last reply Reply Quote 1
                                • uweklatt
                                  uweklatt @da_Woody last edited by

                                  @da_woody sagte in Proxmox LXC mit Frigate:

                                  @wal Running Frigate in a VM on top of Proxmox, ESXi, Virtualbox, etc. is not recommended.

                                  Damit ist eine VM, und nicht Docker unter Proxmox in einer LXC gemeint.

                                  Ich bin auch von Frigate begeistert.
                                  Ich nutze eine Full-HD und eine 5k-Kamera, wobei das Bild der 5k-Kamera mit go2rtc in 2 virtuelle (getrennte Bildbereiche) aufgesplittet wird.
                                  In Frigate stehen somit 3 Kamerastreams zur Verfügung.

                                  Für die Bilderkennung nutze ich den Coral USB Stick, der zusammen mit der hardwarebeschleunigten Grafik (i5 Prozessor) in den LXC Container und letztendlich nach Docker durchgereicht werden.
                                  Das funktioniert prima.

                                  Zwei h264-Videostreams aus go2rtc werden dann noch live zu Twitch gestreamt. (Für Vogelfreunde: Nistkasten-Kamera, wo gerade gebrütet wird.)

                                  Tschau
                                  Uwe

                                  da_Woody 1 Reply Last reply Reply Quote 0
                                  • da_Woody
                                    da_Woody @uweklatt last edited by

                                    @uweklatt sagte in Proxmox LXC mit Frigate:

                                    Damit ist eine VM, und nicht Docker unter Proxmox in einer LXC gemeint.

                                    sorry, liest sich anders.

                                    1 Reply Last reply Reply Quote 0
                                    • Wal
                                      Wal Developer last edited by

                                      Gestern wurde die Coral Dual EDGE TPU eingebaut.
                                      Der PCI-E Key-E Adapter von Makerfab kam aus China:
                                      30 Dollar Adapter
                                      31 Dollar Versand über DHL
                                      21 Euro Zollgebühren
                                      macht mit Märchenumrechnungsfaktor von PayPal
                                      82Euro

                                      • 63,90 Euro für die Dual Edge TPU mit Versand

                                      145,90 Euro hat mich der Spass gekostet.

                                      Die Adapter von Amazon usw. haben leider nur 1 Line für die Anbindung der TPU, deshalb wird nur eine CPU erkannt.
                                      Der von Makerfab ist speziell für 2 Linien und der Dual TPU gemacht.
                                      Das Ganze war jetzt trotzdem billiger als 2 x Coral USB bei Pollin.

                                      M 1 Reply Last reply Reply Quote 1
                                      • Wal
                                        Wal Developer last edited by

                                        Ich lasse jetzt den Stream von der Sprechanlage direkt auf dem RPI4 in einen rtsp Stream umwandeln.
                                        Die CPU-Last vom RPI4 ging von 5% auf 45% hoch und auf dem frigate LXC:
                                        Screenshot 2023-04-19 120403.jpg

                                        R 1 Reply Last reply Reply Quote 0
                                        • R
                                          Radi @Wal last edited by

                                          @wal Hallo Walter,

                                          ich mühe mich bereits seit einigen Tagen Frigate zu benutzen. Ich habe dieses auf einem Gigabyte Brix mit einem I7 10710U unter Proxmox 7.4-3 installiert. Zusätzlich habe ich eine NVM-E TPU eingerichtet.
                                          Als Kameras nutze ich diverse Reolink-Kameras, von denen ich jetzt eine konfiguriert habe.
                                          Das einzige, was ich auf der Weboberfläche zu sehen bekomme ist dies:
                                          ae9e88db-2491-47b3-8dbe-673d7c72e794-grafik.png

                                          Hast du ein paar Seiten, möglichst auf deutsch, wo man etwas Hilfe bei der Fehlersuche bekommen kann. Ich möchte deinen Beitrag hier nicht missbrauchen.

                                          Grüße
                                          Ralf

                                          Wal 1 Reply Last reply Reply Quote 0
                                          • Wal
                                            Wal Developer @Radi last edited by

                                            @radi ,
                                            zeig mal deine frigate.yaml und config.yaml.

                                            R 1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            682
                                            Online

                                            31.6k
                                            Users

                                            79.5k
                                            Topics

                                            1.3m
                                            Posts

                                            16
                                            176
                                            27014
                                            Loading More Posts
                                            • Oldest to Newest
                                            • Newest to Oldest
                                            • Most Votes
                                            Reply
                                            • Reply as topic
                                            Log in to reply
                                            Community
                                            Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                                            The ioBroker Community 2014-2023
                                            logo