Instalace Scrypted (NVR)
Tento návod popisuje instalaci Scrypted do LXC kontejneru na Proxmoxu. Využíváme oficiální/komunitní instalační scripty pro snadné nasazení s podporou hardwarové akcelerace.
1. Instalace v Proxmoxu (Manuální + AMD iGPU)
Jelikož používáme AMD Ryzen (NiPoGi) s integrovanou grafikou, je potřeba vytvořit kontejner ručně a povolit "Passthrough" pro grafickou kartu, aby Scrypted mohl využívat hardwarovou akceleraci pro detekci objektů.
Krok 1: Vytvoření LXC
V Proxmox UI vytvořte nový kontejner (CT):
- Hostname:
scrypted - Template:
debian-12-standard - Disk: min. 8GB (doporučeno 32GB+ pro lokální nahrávání)
- CPU/RAM: 4 Cores, 4096 MB RAM
- Network: DHCP (Static IP nastavíme později v routeru)
- Unprivileged: Yes (Default)
- Nesting: ✅ NUTNÉ! (V záložce Options -> Features zaškrtněte
Nestingakeyctl).
Důležité: Kontejner zatím nespouštějte!
Krok 2: Konfigurace iGPU Passthrough (AMD)
Pro zpřístupnění grafiky kontejneru je nutné editovat konfigurační soubor na hostiteli (Proxmox Shell).
- Zjistěte ID nového kontejneru (např.
106). - Editujte config:
nano /etc/pve/lxc/106.conf - Na konec souboru přidejte:
lxc.cgroup2.devices.allow: c 226:0 rwm lxc.cgroup2.devices.allow: c 226:128 rwm lxc.mount.entry: /dev/dri/renderD128 dev/dri/renderD128 none bind,optional,create=file lxc.mount.entry: /dev/dri/card0 dev/dri/card0 none bind,optional,create=file - Uložte (
CTRL+X,Y,Enter).
Krok 2b: Oprávnění pro VAAPI v unprivileged LXC
Unprivileged LXC mapuje UID/GID, takže /dev/dri/renderD128 uvnitř kontejneru má nobody:nogroup a VAAPI selže s Generic error in an external library.
Řešení: Na hostiteli (pmx2) vytvořte udev pravidlo pro trvalé world-readable oprávnění:
cat > /etc/udev/rules.d/99-dri-permissions.rules << 'EOF'
SUBSYSTEM=="drm", KERNEL=="renderD128", MODE="0666"
SUBSYSTEM=="drm", KERNEL=="card0", MODE="0666"
EOF
Ověření uvnitř LXC:
vainfo --display drm
# Mělo by ukázat: VA-API version, Mesa Gallium driver, radeonsi
# + seznam podporovaných profilů (H264, HEVC, VP9)
Krok 3: Instalace Scrypted
- Nastartujte kontejner a otevřete Console.
- Nainstalujte ovladače pro AMD grafiku:
(Ověření:
apt-get update && apt-get install -y mesa-va-drivers libva-drm2 libva-x11-2 xlsxls -l /dev/driby mělo ukázatrenderD128). - Spusťte instalaci Scrypted (via Docker):
apt-get install -y curl curl -s https://raw.githubusercontent.com/koush/scrypted/master/install/docker/install-scrypted-docker-compose.sh | bash
Proxmox LXC Instalace (Troubleshooting Notes)
Pokud instalujete do Unprivileged LXC kontejneru (Debian 12/13), narazíte na několik problémů. Zde je ověřený postup oprav:
-
Chybějící
sudoalspci:- Skript vyžaduje příkazy, které v minimal Debianu nejsou.
- Oprava před instalací:
apt-get update && apt-get install -y sudo pciutils avahi-daemon
-
Chyba "SERVICE_USER environment variable":
- Instalátor neví, pod kým spustit službu.
- Oprava:
export SERVICE_USER=rootpřed spuštěním skriptu.
-
AppArmor / Docker Permission Denied:
- Pokud Docker hlásí
OCI runtime create failed ... permission denied(kvůlinet.ipv4.ip_unprivileged_port_start), Proxmox blokuje změnu sysctl. - Oprava: Na hostiteli (
pmx2) upravte/etc/pve/lxc/<ID>.confa přidejte:lxc.apparmor.profile: unconfined - Poté Restartujte kontejner (Stop -> Start).
- Pokud Docker hlásí
-
Instalace bez Docker (pokud už tam je):
- Pokud se instalace zasekne nebo ji spouštíte podruhé, stáhněte skript:
wget -O install.sh https://raw.githubusercontent.com/koush/scrypted/master/install/docker/install-scrypted-docker-compose.sh - Spusťte:
bash install.sh - Odpovězte NO na "Install Docker?", YES na "Avahi".
- Pokud se instalace zasekne nebo ji spouštíte podruhé, stáhněte skript:
2. Po instalaci
Scrypted je dostupný na:
- URL:
https://192.168.20.21:10443(IP rezervována v pfSense) - Při prvním spuštění si vytvořte účet.
3. Konfigurace pro kamery
- Plugins: Nainstalujte pluginy:
Hikvision(pro komunikaci s kamerami)Rebroadcast(pro distribuci streamů)HomeKit(pro Apple Home)
- Přidání kamery:
- Device Discovery nebo Manual Add.
- Zadejte IP kamery (
192.168.60.x), Username/Password. - Streamy:
- Main Stream: Vysoká kvalita (pro nahrávání/live view ve 4K).
- Sub Stream: Nižší kvalita (pro detekci pohybu/rychlý náhled).