Self-hosted AI NVR/VMS, NVIDIA CUDA accelerated - on-device AI, no cloud
3.8K
Privacy-first home & small-business camera recording + on-device AI. Your video never leaves your LAN — nothing is uploaded to any vendor cloud, and AI inference (people / vehicles / faces / license plates / pose / fall) runs entirely on-box, no OpenAI / Gemini / Claude API key required.
A self-hosted alternative to Frigate / Shinobi / ZoneMinder / Scrypted / Agent DVR / iSpy / MotionEye / BlueIris — pre-bundled into a single container (ZLMediaKit + database + recording + detection + web admin + nginx, supervised by s6-overlay).
Website: https://yun-kan.com · Changelog: https://yun-kan.com/changelog
This is the CUDA build — NVIDIA GPU accelerated inference. Want even faster on NVIDIA? try martin888/yunkan-trt (TensorRT). No GPU? use martin888/yunkan-cpu. Intel iGPU? use martin888/yunkan-openvino. Tags: latest and pinned (e.g. 0.9.9). Only one variant runs at a time.
Requires the host to have NVIDIA drivers + nvidia-container-toolkit installed.
Auto-detects the NVIDIA GPU, wires up the runtime, picks this variant, and sets up OTA self-update:
curl -fsSL https://cdn.yun-kan.com/yunkan-install.sh | bash
Then open http://:23406/, run the setup wizard (pick SQLite), create an admin, add cameras.
Save as compose.yml then docker compose up -d. Needs nvidia-container-toolkit on the host:
name: yunkan
services:
yunkan:
image: martin888/yunkan-cuda:0.9.9 # or :latest
container_name: yunkan
restart: always
network_mode: host
deploy:
resources:
reservations:
devices:
- driver: nvidia
count: all
capabilities: [gpu]
volumes:
- ./data:/app/data
- ./recordings:/app/data/recordings
- /etc/machine-id:/etc/machine-id:ro
- /sys/class/dmi/id/product_uuid:/sys/class/dmi/id/product_uuid:ro
- /var/run/docker.sock:/var/run/docker.sock
environment:
- TZ=Asia/Shanghai
- SKYVIEW_SELF_CONTAINER_NAME=yunkan
Keep the
machine-id/product_uuidread-only mounts (license fingerprint). Drop thedocker.sockmount to disable in-app upgrades (then upgrade viadocker compose pull && up -d).
| Port | Proto | Purpose |
|---|---|---|
23406 | tcp | Web dashboard / REST API (open this in a browser) |
23880 | tcp | RTSP |
24214 | tcp | HLS + WebRTC (WHEP) signaling + media-server API/hooks |
23515 | udp+tcp | WebRTC ICE media |
Public / WAN: set SKYVIEW_WEBRTC_EXTERN_IPS=<public-ip-or-domain>.
Keywords: NVR, VMS, CUDA, NVIDIA, GPU, NVDEC, RTX, person detection, vehicle detection, face recognition, license plate, ALPR, fall detection, WebRTC, HLS, Home Assistant, MQTT, AI NVR, on-device AI, edge AI, no cloud, privacy, self-hosted, Frigate alternative, 云瞰, 显卡推理, 本地 AI.
Content type
Image
Digest
sha256:a9c1fa55c…
Size
2.7 GB
Last updated
2 days ago
docker pull martin888/yunkan-cuda