Zum Inhalt springen
Verdacloud
menu
KI-Server & GPU-Computing

Docker und Kubernetes für KI: Container-Orchestrierung auf GPU-Servern

Docker und Kubernetes machen KI-Workloads auf GPU-Servern reproduzierbar und gut verwaltbar: Docker bündelt Modell, Framework, CUDA-Bibliotheken und Abhängigkeiten in einem Container, das NVIDIA Container Toolkit gibt diesem Container Zugriff auf die GPU. Für einen einzelnen Server mit wenigen Diensten genügt meist Docker Compose. Kubernetes lohnt sich, sobald mehrere Modelle, mehrere GPUs oder automatisierte Rollouts ins Spiel kommen.

Daniel Gnann · · aktualisiert · 5 Min. Lesezeit

Warum Docker und Kubernetes für KI?

KI-Anwendungen haben besonders empfindliche Abhängigkeiten. Die Version des NVIDIA-Treibers, die CUDA-Laufzeit, PyTorch, das Inference-Framework und die Modellgewichte müssen zueinander passen. Ohne Container entsteht schnell eine Umgebung, die niemand mehr exakt nachbauen kann – und der Satz „bei mir funktioniert es“ wird zum Dauerproblem.

Container lösen das auf mehreren Ebenen:

  • Reproduzierbarkeit: Dasselbe Image läuft in Test und Produktion identisch.
  • Isolation: Mehrere Modelle mit unterschiedlichen Framework-Versionen laufen auf demselben Server, ohne sich zu stören.
  • Schnelle Updates und Rollbacks: Eine neue Modellversion ist ein neues Image; geht etwas schief, ist die vorherige Version sofort wieder aktiv.
  • Trennung von Plattform und Anwendung: Der Host benötigt nur Treiber und Container-Runtime, alles andere steckt im Container.

Docker mit NVIDIA-GPU-Unterstützung

Die Grundlage bildet das NVIDIA Container Toolkit. Es sorgt dafür, dass Container die GPU des Hosts nutzen können, ohne dass der Treiber im Container installiert sein muss. Wichtig ist das Zusammenspiel: Der Treiber läuft auf dem Host, die CUDA-Bibliotheken kommen aus dem Container-Image. Der Host-Treiber muss daher mindestens so aktuell sein, wie die CUDA-Version im Image es verlangt.

Ein Container mit GPU-Zugriff wird mit dem Parameter --gpus all gestartet; in Docker Compose wird die GPU im Abschnitt für Geräte-Reservierungen angefordert. Bewährte Praktiken für den Betrieb:

  • Modellgewichte als Volume einbinden, nicht ins Image backen. So bleiben Images schlank und Modelle lassen sich unabhängig austauschen.
  • Image-Versionen festschreiben, statt latest zu verwenden. Nur so ist nachvollziehbar, was gerade läuft.
  • Gemeinsamen Speicher ausreichend dimensionieren, da Frameworks wie PyTorch ihn für die Kommunikation zwischen Prozessen nutzen.
  • Health-Checks definieren, damit ein hängender Inference-Dienst automatisch erkannt und neu gestartet wird.

Auf unseren Managed KI-Servern sind Docker und das NVIDIA Container Toolkit bereits eingerichtet und aufeinander abgestimmt.

Gängige Container-Images für KI-Workloads

Software Einsatzzweck Stärken
vLLM LLM-Serving im Produktivbetrieb hoher Durchsatz, OpenAI-kompatible API
SGLang LLM-Serving mit komplexen Abläufen effizientes Caching, strukturierte Ausgaben
NVIDIA Triton Inference Server verschiedene Frameworks und Modelltypen Multi-Framework, gut für Vision-Modelle
Ollama Prototypen und kleine Setups sehr einfache Bedienung
Open WebUI Chat-Oberfläche für Nutzer Anbindung an vLLM oder Ollama

Hugging Face Text Generation Inference (TGI) war lange eine verbreitete Option, befindet sich aber inzwischen im Wartungsmodus. Für neue Projekte empfiehlt Hugging Face selbst Alternativen wie vLLM oder SGLang. Einen Vergleich der Inference-Frameworks finden Sie im Beitrag vLLM vs. Ollama vs. TGI.

Kubernetes für Multi-GPU und Multi-Modell

Wenn Sie mehrere Modelle auf mehreren GPUs oder Servern betreiben, übernimmt Kubernetes die Orchestrierung: Es verteilt Container auf verfügbare Ressourcen, startet ausgefallene Dienste neu, verteilt Last und führt Updates schrittweise ohne Unterbrechung durch.

Für GPUs braucht Kubernetes zusätzliche Komponenten. Der NVIDIA GPU Operator installiert und verwaltet Treiber, Container Toolkit, Geräte-Plugin und Monitoring-Exporter automatisiert auf allen GPU-Knoten. Seit Kubernetes 1.34 ist zudem Dynamic Resource Allocation (DRA) allgemein verfügbar. NVIDIA bietet dafür einen eigenen DRA-Treiber an, mit dem sich GPUs flexibler und anhand von Geräteeigenschaften zuweisen lassen als mit dem klassischen Geräte-Plugin (Stand: September 2026).

Auch das Teilen einer GPU ist möglich:

  • Multi-Instance GPU (MIG): Die RTX PRO 6000 Blackwell lässt sich in bis zu vier hardwareseitig isolierte Instanzen aufteilen, etwa für Produktiv- und Testumgebung. Bei Verdacloud richten wir MIG auf Anfrage ein; es ist nicht Teil der Standardpakete.
  • Time-Slicing: Mehrere Container teilen sich eine GPU zeitlich. Das eignet sich für Entwicklung und kleine Dienste, bietet aber keine harte Isolation.

Docker Compose, K3s oder vollständiges Kubernetes?

Szenario Empfehlung
Ein Server, ein bis wenige Modelle Docker Compose
Ein oder wenige Server, automatisierte Rollouts gewünscht K3s (schlankes Kubernetes) mit GPU Operator
Viele Server, mehrere Teams, hohe Anforderungen an Skalierung vollständiges Kubernetes

Ein häufiger Fehler ist, zu früh auf Kubernetes zu setzen. Für einen einzelnen GPU-Server mit einem Sprachmodell, einem Embedding-Modell und einer Weboberfläche ist Docker Compose übersichtlicher, schneller eingerichtet und leichter zu warten. Kubernetes entfaltet seinen Nutzen erst, wenn die Umgebung wächst.

Sicherheit im Container-Betrieb

Container sind kein Sicherheitsfeature an sich. Achten Sie auf:

  • Container nicht als Root ausführen, wo es sich vermeiden lässt
  • Inference-APIs nicht ungeschützt ins Internet stellen, sondern hinter Authentifizierung oder ein KI Secure Gateway legen
  • Images aus vertrauenswürdigen Quellen beziehen und regelmäßig auf Schwachstellen prüfen
  • Zugriffe in Kubernetes über rollenbasierte Rechte (RBAC) begrenzen

Weitere Maßnahmen beschreibt unser Beitrag zur Sicherheit von KI-Servern.

Unsere Managed-Container-Umgebung

Auf Wunsch stellen wir eine vorkonfigurierte Container-Umgebung bereit: Docker mit NVIDIA Container Toolkit, optional mit einer Weboberfläche zur Container-Verwaltung. Für größere Setups richten wir auf Anfrage K3s mit GPU Operator ein; das ist nicht Teil der Standardpakete und wird separat angeboten. Sie deployen Ihre Container, wir kümmern uns um Treiber, Updates, Monitoring und Backups der Plattform.

Häufige Fragen

Muss der NVIDIA-Treiber im Container installiert sein?
Nein. Der Treiber läuft auf dem Host, das NVIDIA Container Toolkit stellt ihn dem Container zur Verfügung. Im Image befinden sich nur die CUDA-Bibliotheken und Frameworks. Der Host-Treiber muss dabei zur CUDA-Version im Image passen.
Brauche ich Kubernetes für einen einzelnen GPU-Server?
In der Regel nicht. Für einen Server mit wenigen Diensten ist Docker Compose einfacher und ausreichend. Kubernetes oder K3s lohnt sich, wenn mehrere Server, viele Modelle oder automatisierte Rollouts verwaltet werden sollen.
Können sich mehrere Container eine GPU teilen?
Ja. Per Time-Slicing teilen sich Container die GPU zeitlich, bei der RTX PRO 6000 ist zusätzlich die Aufteilung in bis zu vier isolierte MIG-Instanzen möglich (bei Verdacloud auf Anfrage). Entscheidend ist, dass der VRAM für alle gleichzeitig laufenden Modelle ausreicht.
Welches Container-Image eignet sich für LLMs im Produktivbetrieb?
Für viele parallele Nutzer haben sich vLLM und SGLang bewährt, beide bieten eine OpenAI-kompatible API. Für Prototypen ist Ollama eine einfache Alternative.
Anfrage

Sprechen wir über Ihre Anforderungen.

Nennen Sie uns Workload, Datenmenge und Nutzerzahl — Sie erhalten ein konkretes Angebot mit Festpreis.