Community-Lösung

NVIDIA Container Toolkit auf ZimaOS: Aktuelle GPU-Konfiguration

A generic x86 ZimaOS user with a GTX 1050 wanted NVIDIA Container Toolkit for transcoding and Immich ML but could not use a normal package manager.

Führen Sie unter aktuellem ZimaOS keine Ubuntu-Anweisungen aus, die das NVIDIA Container Toolkit mit apt auf dem Host installieren. ZimaOS verfügt über eine eigene NVIDIA-Treiber-/Laufzeitintegration. In der aktuellen Dokumentation zu Docker-Apps werden GPU-Container mit runtime: nvidia und NVIDIA_VISIBLE_DEVICES konfiguriert.

Der Nutzer der Quelle aus dem Jahr 2025 hatte einen gewöhnlichen x86-Server mit einer GTX 1050 und stellte richtigerweise fest, dass ZimaOS keinen üblichen Debian-Paketmanager hat. Das Toolkit in einem Alpine-Container auszuführen, kann das Problem mit der Laufzeitumgebung auf dem Host ebenfalls nicht lösen – die NVIDIA-Laufzeitumgebung muss auf der Ebene des Docker-Hosts vorhanden sein.

Zuerst den GPU-Treiber des Hosts überprüfen

nvidia-smi
lspci -nnk | grep -A3 -Ei 'vga|3d|display'

Wenn nvidia-smi nicht mit der GPU kommunizieren kann, ist die Docker-Konfiguration nicht das erste Problem, das behoben werden sollte.

Prüfen, ob Docker bereits über eine NVIDIA-Laufzeitumgebung verfügt

docker info | grep -i nvidia
ps aux | grep '[d]ockerd'

Aktuelles ZimaOS startet Docker üblicherweise mit verfügbarer NVIDIA-Laufzeitumgebung, selbst auf Systemen, auf denen sie nicht aktiv verwendet wird.

Das Laufzeitmodell von ZimaOS verwenden

Die aktuelle Anleitung zur NVIDIA-Docker-Laufzeitumgebung für ZimaOS zeigt:

services:
  my-gpu-app:
    image: your/image
    runtime: nvidia
    ipc: host
    environment:
      NVIDIA_VISIBLE_DEVICES: all

Warum die Installation des Toolkits in einem anderen Container nicht funktioniert

Das NVIDIA Container Toolkit integriert sich auf dem Host in Docker/containerd. Die Installationsanleitung für das NVIDIA Container Toolkit von NVIDIA selbst verwendet nvidia-ctk runtime configure, um die Docker-Konfiguration des Hosts zu ändern und Docker neu zu starten.

apt-Anweisungen nicht in ZimaOS kopieren

NVIDIAs Installationsanleitung setzt unterstützte Debian-/RPM-basierte Distributionen mit Paketverwaltungen auf dem Host voraus. Aktuelles ZimaOS wird nicht auf diese Weise verwaltet, daher können Paketinstallationsanweisungen für den Host mit dem Appliance-Image und dem Aktualisierungsmodell in Konflikt geraten.

GPU-Zugriff in einem Container testen

Sobald Host-Treiber und Laufzeit einwandfrei funktionieren, verwende einen bekannten GPU-fähigen Container oder deine Zielanwendung, um zu überprüfen, ob das Gerät im Container tatsächlich sichtbar ist.

Die GTX 1050 hat Grenzen je nach Anwendung

Eine GTX 1050 kann für manche NVENC-/NVDEC-Transkodierungen ausreichen, aber KI-Anwendungen wie das aktuelle maschinelle Lernen von Immich können strengere Anforderungen an CUDA, VRAM, Modelle und Frameworks stellen. „Docker erkennt die GPU“ bedeutet nicht, dass jede App sie unterstützt.

App-Konfiguration sichern, bevor du Laufzeiteinstellungen änderst

Ersetze Docker-Dienstdateien oder die Laufzeitkonfiguration nicht manuell, es sei denn, du kannst die Änderungen rückgängig machen. Eine fehlerhafte Host-Laufzeitkonfiguration kann alle Docker-Apps lahmlegen, nicht nur den GPU-Container.

Der aktuelle GPU-Container-Leitfaden erläutert ausführlicher die Unterschiede zwischen aktueller und älterer Software.

Laufzeit in der Zielanwendung überprüfen

nvidia-smi auf dem Host beweist nur, dass der ZimaOS-Host-Treiber die Karte erkennt. Öffne eine Shell im tatsächlich GPU-fähigen Container und überprüfe dort das Gerät und die Laufzeit; andernfalls kann eine App unbemerkt auf die CPU zurückgreifen, obwohl die Host-GPU einwandfrei zu funktionieren scheint.

Transkodierung und KI-Kompatibilität unterscheiden

Die Unterstützung für NVENC/NVDEC, die CUDA-Rechenleistung, der VRAM und anwendungsspezifische Frameworks sind unterschiedliche Voraussetzungen. Eine Karte, die Plex-/Jellyfin-Transkodierung bewältigt, kann für ein aktuelles ML-Modell trotzdem zu alt oder zu leistungsschwach sein.

FAQ

Sollte ich nvidia-container-toolkit auf ZimaOS mit apt installieren?

Nein. Verwende den aktuellen NVIDIA-Laufzeitpfad von ZimaOS, statt den Host wie Ubuntu zu behandeln.

Kann ich das Toolkit in Alpine Docker installieren?

Nein. Die Laufzeitintegration muss auf dem Docker-Host vorhanden sein.

Woher weiß ich, ob Docker NVIDIA erkennt?

Prüfe docker info, den Docker-Daemon-Befehl bzw. die Laufzeit und verifiziere anschließend den GPU-Zugriff im Zielcontainer.

Beweist host nvidia-smi, dass Immich ML funktioniert?

Nein. Es beweist, dass der Host-Treiber die Karte erkennt; Container und Anwendung benötigen weiterhin kompatible CUDA-/VRAM-/Laufzeitunterstützung.