Keresés

Új hozzászólás Aktív témák

  • VANESSZA1

    őstag

    válasz ViZion #4722 üzenetére

    Én így csináltam, és adtam esélyt az AI-nak megfogalmazni a lépéseket :)
    (bocs ha kicsit hosszú), de remélem segít.

    🚀 Ultimate Frigate Útmutató:

    Proxmox LXC + AMD Ryzen iGPU + Google Coral Dual Edge TPU

    Ez az útmutató bemutatja, hogyan építs fel egy brutális teljesítményű NVR rendszert Proxmox alatt, LXC konténerben (nem VM-ben!), minimális erőforrás-veszteséggel.
    A Vas ("A Főnök"):
    • CPU: AMD Ryzen 5 Pro 4650G (Vega 7 iGPU - hardveres kódoláshoz)
    • AI: Google Coral Dual Edge TPU (M.2 E-key - objektum detektáláshoz)
    • OS: Proxmox VE 8.x (Kernel 6.8+)
    ________________________________________
    🛠️ 1. Lépés: Proxmox Host Előkészítése (Driverek)
    Mivel LXC-t használunk, a Host gép kernelét és drivereit használja a konténer. A Proxmox 8-as kerneléhez (6.5+) a hivatalos Google Coral driver nem jó, a közösségi javított verzió kell.
    Lépj be a Proxmox Shellbe:
    1. Csomagtárolók és Header-ek rendezése:
    (Ha nincs előfizetésed, kapcsold be a no-subscription repót, és kapcsold ki az enterprise-t, majd frissíts).
    > apt update
    > apt install -y pve-headers-$(uname -r) git dkms build-essential
    2. A Dual Coral Driver telepítése (Feranick Fork):
    > cd /usr/src
    > git clone https://github.com/feranick/gasket-driver.git
    > cd gasket-driver
    > debuild -us -uc -tc -b
    > cd ..
    > dpkg -i gasket-dkms_*.deb
    > apt install -y libedgetpu1-std
    3. Jogosultságok (UDEV szabály):
    > sh -c "echo 'SUBSYSTEM==\"apex\", MODE=\"0666\"' > /etc/udev/rules.d/65-apex.rules"
    > udevadm control --reload-rules && udevadm trigger
    4. Ellenőrzés és Újraindítás:
    Indítsd újra a szervert (reboot). Utána ellenőrizd:
    > ls -l /dev/apex*
    # látnod-kell-devapex_0-és-devapex_1
    ________________________________________
    📦 2. Lépés: Az LXC Konténer Létrehozása
    Hozz létre egy Debian 12 (Bookworm) konténert a Proxmox felületén ezekkel a beállításokkal:
    • Privileged: IGEN (Unprivileged pipát vedd ki!) – Kritikus a hardver eléréshez.
    • Nesting: IGEN (Options -> Features -> Nesting) – Kell a Dockernek.
    • Resources: 4 CPU mag, 4GB+ RAM.
    ________________________________________
    🔗 3. Lépés: Hardver Átadás (Passthrough)
    Mielőtt elindítanád a konténert, szerkeszd a konfigurációját a Host Shellben.
    (A példában a konténer ID: 300, a tárhelyed UUID-jét vagy mount pontját ellenőrizd!)
    > nano /etc/pve/lxc/300.conf
    Add a fájl végéhez:
    # --- AMD Vega GPU Átadás ---
    > lxc.cgroup2.devices.allow: c 226:* rwm
    > lxc.mount.entry: /dev/dri/renderD128 dev/dri/renderD128 none bind,optional,create=file 0, 0
    > lxc.mount.entry: /dev/dri/card0 dev/dri/card0 none bind,optional,create=file 0, 0
    # --- Google Coral Dual TPU Átadás (Major ID: 120) ---
    > lxc.cgroup2.devices.allow: c 120:* rwm
    > lxc.mount.entry: /dev/apex_0 dev/apex_0 none bind,optional,create=file 0, 0
    > lxc.mount.entry: /dev/apex_1 dev/apex_1 none bind,optional,create=file 0, 0
    # --- Tárhely (Bind Mount) ---
    > mp0: /mnt/frigate_media,mp=/media/frigate
    # --- DOCKER JOGOSULTSÁG JAVÍTÁS (Kritikus!) ---
    > lxc.apparmor.profile: unconfined
    ________________________________________
    🐳 4. Lépés: Docker és Driverek a Konténerben
    Indítsd el a konténert, lépj be a konzoljába, és telepítsd a környezetet:
    # Rendszer frissítés
    > apt update && apt upgrade -y
    > apt install -y curl gnupg2 lsb-release
    # Docker telepítése
    > curl -fsSL https://get.docker.com -o get-docker.sh
    > sh get-docker.sh
    # AMD Driverek telepítése (hogy a Frigate lássa a GPU-t)
    > apt install -y mesa-va-drivers mesa-vdpau-drivers vainfo

    ________________________________________
    ⚙️ 5. Lépés: Frigate Telepítése (Docker Compose)
    Hozd létre a mappát: /opt/frigate.
    docker-compose.yml (Kiemelt figyelem a Frigate Plus kulcsra!):
    version: "3.9"
    services:
    frigate:
    container_name: frigate
    privileged: true
    restart: unless-stopped
    image: ghcr.io/blakeblackshear/frigate:stable
    shm_size: "256mb"
    environment:
    # FONTOS: Frigate 0.14+ alatt a kulcsot itt kell megadni!
    # A változó neve: PLUS_API_KEY (nem FRIGATE_PLUS_API_KEY)
    - PLUS_API_KEY=IDE_ÍRD_A_HOSSZÚ_KULCSOT_MACSKAKÖRÖM_NÉLKÜL
    devices:
    - /dev/apex_0:/dev/apex_0
    - /dev/apex_1:/dev/apex_1
    - /dev/dri/renderD128:/dev/dri/renderD128
    volumes:
    - /etc/localtime:/etc/localtime:ro
    - ./config.yml:/config/config.yml
    - /media/frigate:/media/frigate
    - type: tmpfs
    target: /tmp/cache
    tmpfs:
    size: 1000000000 # 1GB RAM Cache
    ports:
    - "5000:5000"
    - "8554:8554"
    - "8555:8555/tcp" # WebRTC
    - "8555:8555/udp" # WebRTC

    config.yml (Optimális beállítások):
    mqtt:
    enabled: False # Vagy add meg a HA adatait
    # Frigate Plus Modell (Kulcs a docker-compose-ban van!)
    model:
    path: plus://xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
    # Dual TPU használata
    > * detectors:
    > * coral_pci1:
    > * type: edgetpu
    > * device: pci:0
    > * coral_pci2:
    > * type: edgetpu
    > * device: pci:1
    # AMD GPU Hardveres gyorsítás
    > ffmpeg:
    > hwaccel_args: preset-vaapi
    # Helytakarékos rögzítés (Csak események tárolása)
    > record:
    > enabled: True
    > retain:
    > days: 0 # Üresjáratot nem tárolunk
    > mode: all
    > events:
    > retain:
    > default: 10 # Eseményeket 10 napig őrizzük
    > mode: active_objects
    >
    > snapshots:
    > enabled: True
    ________________________________________
    ✅ 6. Lépés: Indítás
    docker compose up -d

    Ha mindent jól csináltál, a http://IP_CIM:5000 címen:
    1. A System fülön látod a két Coralt (Inference speed < 10ms).
    2. Látod az AMD GPU (vaapi) használatot.
    3. A Frigate Plus modell aktív.
    Pro Tipp: Most azonnal csinálj egy Backupot a konténerről a Proxmoxban! 😉
    ⚠️ KRITIKUS PONT: A Frigate Plus Kulcs és a Modell ID megkülönböztetése
    A leggyakoribb hiba, hogy összekeverik a "Belépőkártyát" (API Key) és a "Terméket" (Model ID). A Frigate 0.14+ verziótól kezdve ezeket KÉT KÜLÖNBÖZŐ HELYRE kell írni!
    1. A Hosszú API Kulcs ("A Jelszó")
    • Hol találod: Frigate Plus Dashboard -> Settings -> API Key.
    • Hova kell írni: docker-compose.yml
    • Változó neve: PLUS_API_KEY (Szigorúan ez a neve! Nem FRIGATE_PLUS...!)
    • Formátum: Csak a hosszú karaktersorozat, macskaköröm nélkül.
    Példa a docker-compose.yml-ben:
    > environment:
    > - PLUS_API_KEY=xxxxxxxxxxxxxxxxxxxxxxxx... (IDE JÖN A HOSSZÚ KULCS) ...707bxaxa
    2. A Modell Azonosító ("A Termék")
    • Hol találod: Frigate Plus Dashboard -> Models -> A modell ID-ja (pl. plus://...).
    • Hova kell írni: config.yml
    • Szekció: model: path:
    • Fontos: Itt NEM szabad megadni a plus: key: blokkot, mert az már a docker-compose-ban van!
    Példa a config.yml-ben:
    > model:
    > path: plus://xxxxxxxxxxxxxxxxxxxxxxxxx <-- IDE CSAK AZ ID KELL!
    ________________________________________
    Összefoglalva a működés logikája:
    1. A konténer induláskor beolvassa a titkos kulcsot a docker-compose.yml-ből (PLUS_API_KEY).
    2. Ezzel "bejelentkezik" a Frigate szerverre.
    3. Ezután megnézi a config.yml-t, látja a model: path:-ot.
    4. Mivel már be van jelentkezve, engedélyt kap a modell letöltésére és futtatására.
    ________________________________________
    Mükődő AMD Ryzen Proxmox IGP átadással ! 😉

Új hozzászólás Aktív témák