ComfyUI mit Docker einrichten: Vollständige Anleitung (2026)

ComfyUI ist eine knotenbasierte Oberfläche für KI-Bildgenerierung, die Stable Diffusion, SDXL, Flux und SD3-Modelle vollständig auf Ihrer Hardware ausführt. Das Projekt erreichte Anfang 2026 über 65.000 GitHub-Sterne und ist das am weitesten verbreitete Open-Source-Frontend für Bildgenerierung. Alle Generierungen laufen lokal ohne API-Schlüssel, ohne Nutzungsgebühren und ohne Datenübertragung an externe Server.
ComfyUI in Docker zu betreiben eliminiert Python-Abhängigkeitskonflikte, hält das Host-System sauber und ermöglicht die Bereitstellung auf einem Remote-Server ohne lokale GPU. Diese Anleitung verwendet das Docker-Image yanwk/comfyui-boot, eines der am aktivsten gepflegten Community-Images für ComfyUI, das NVIDIA GPU- und CPU-Inferenz von Haus aus unterstützt.
Nach Abschluss dieser Anleitung läuft ComfyUI unter http://localhost:8188, Modelle sind heruntergeladen und auswählbar, Docker Compose ist für automatische Neustarts konfiguriert und ComfyUI Manager ist für die Ein-Klick-Installation von Custom Nodes eingerichtet. Für Server-Deployments ohne lokale Hardware-Belegung bietet Contabo Cloud VPS Pläne ab €5,45/Monat für CPU-Inferenz und €30,25/Monat für Cloud VPS 40 mit 48 GB RAM, der SDXL- und die meisten Flux-Workflows komfortabel verarbeitet.
Voraussetzungen
- Docker Engine 24.x+ installiert (prüfen mit: docker --version)
- Docker Compose v2.x installiert (prüfen mit: docker compose version)
- NVIDIA GPU mit 6+ GB VRAM für SDXL, 8+ GB für Flux (CPU-Inferenz funktioniert, ist aber viel langsamer)
- NVIDIA Container Toolkit installiert bei GPU-Einsatz (siehe Abschnitt GPU-Beschleunigung)
- 20+ GB freier Festplattenspeicher (SDXL-Basismodell: 6,9 GB, Flux Schnell: 23,8 GB)
- Linux (Ubuntu 22.04+ empfohlen), macOS oder Windows 10 mit WSL2
Diese Anleitung läuft auf einem Standard-VPS.
Contabo Cloud VPS 40 — €30,25/Monat →Inhaltsverzeichnis
Was ist ComfyUI
ComfyUI ist eine Open-Source-Stable-Diffusion-Oberfläche, die auf einem Knotengraphen-Modell basiert. Statt ein Formular mit einem Prompt auszufüllen und auf "Generieren" zu klicken, bauen Sie eine Pipeline durch das Verbinden von Knoten: Ein Modell-Lade-Knoten speist in einen Text-Encoder, der in einen Sampler speist, der in einen VAE-Decoder speist, der das Bild ausgibt. Jeder Knoten repräsentiert einen diskreten Schritt im Generierungsprozess.
Dieses Design ist anfänglich komplexer zu erlernen als formularbasierte Oberflächen, gibt Ihnen aber präzise Kontrolle über jeden Schritt.
| Oberfläche | Typ | Lernkurve | Flexibilität | VRAM-Effizienz |
|---|---|---|---|---|
| ComfyUI | Knotengraph | Steil | Sehr hoch | Effizient |
| AUTOMATIC1111 | Formularbasiert | Einfach | Mittel | Höherer Verbrauch |
| Fooocus | Vereinfachtes Formular | Sehr einfach | Niedrig | Effizient |
| InvokeAI | Formular + Canvas | Mittel | Hoch | Mittel |
ComfyUI ist das Standardformat zum Teilen erweiterter Workflows. Die Community veröffentlicht Workflows als JSON-Dateien, die direkt in den Canvas geladen werden. Eine Technik, die manuell stundenlang zu konfigurieren wäre, wird per Drag-and-Drop geladen.
ComfyUI mit Docker installieren
Das Image yanwk/comfyui-boot verwaltet die vollständige ComfyUI-Installation im Container. Es richtet Python ein, installiert PyTorch mit CUDA-Unterstützung, installiert alle ComfyUI-Abhängigkeiten und startet den Server auf Port 8188 automatisch.
Schritt 1: Docker-Image ziehen
docker pull yanwk/comfyui-boot:latestDas Image ist ca. 8 GB groß. Bei 200 Mbps dauert das Herunterladen etwa 6 Minuten.
Schritt 2: ComfyUI mit GPU-Unterstützung starten
docker run -d \
--gpus all \
-p 8188:8188 \
-v comfyui_models:/root/comfy/ComfyUI/models \
-v comfyui_output:/root/comfy/ComfyUI/output \
-v comfyui_custom_nodes:/root/comfy/ComfyUI/custom_nodes \
--name comfyui \
--restart unless-stopped \
yanwk/comfyui-boot:latestWas jedes Flag bewirkt:
--gpus all: Alle verfügbaren NVIDIA-GPUs an den Container weitergeben-p 8188:8188: ComfyUI-Webport auf localhost abbilden-v comfyui_models:...: Heruntergeladene Modelle dauerhaft in einem benannten Docker-Volume speichern
Schritt 2 (nur CPU): Ohne GPU starten
docker run -d \
-p 8188:8188 \
-v comfyui_models:/root/comfy/ComfyUI/models \
-v comfyui_output:/root/comfy/ComfyUI/output \
-v comfyui_custom_nodes:/root/comfy/ComfyUI/custom_nodes \
-e CLI_ARGS="--cpu --lowvram" \
--name comfyui \
--restart unless-stopped \
yanwk/comfyui-boot:latestCPU-Inferenz generiert ein 512x512 SD 1.5-Bild in ca. 5-10 Minuten auf einer modernen 4-Kern-CPU.
Schritt 3: Container-Status prüfen
docker psSchritt 4: ComfyUI öffnen
30-60 Sekunden auf den initialen Start warten, dann http://localhost:8188 im Browser öffnen.
docker logs comfyui. Die Startsequenz endet mit To see the GUI go to: http://0.0.0.0:8188, wenn bereit.Produktions-Setup mit Docker Compose
Docker Compose macht die ComfyUI-Konfiguration reproduzierbar und leichter zu verwalten. Projektverzeichnis und docker-compose.yml-Datei erstellen:
mkdir comfyui && cd comfyui
nano docker-compose.ymlDiese Konfiguration für GPU-Deployments einfügen:
version: '3.8'
services:
comfyui:
image: yanwk/comfyui-boot:latest
container_name: comfyui
ports:
- "8188:8188"
volumes:
- comfyui_models:/root/comfy/ComfyUI/models
- comfyui_output:/root/comfy/ComfyUI/output
- comfyui_custom_nodes:/root/comfy/ComfyUI/custom_nodes
deploy:
resources:
reservations:
devices:
- driver: nvidia
count: all
capabilities: [gpu]
restart: unless-stopped
volumes:
comfyui_models:
comfyui_output:
comfyui_custom_nodes:Für reine CPU-Deployments den gesamten deploy:-Block durch Folgendes ersetzen:
environment:
- CLI_ARGS=--cpu --lowvramComfyUI starten:
docker compose up -dComfyUI aktualisieren
docker compose pull
docker compose up -dKI-Modelle herunterladen
ComfyUI ist nur ein Frontend. Es enthält keine KI-Modelle. Modelle müssen heruntergeladen und im richtigen Unterverzeichnis des Modell-Volumes abgelegt werden, bevor Bilder generiert werden können.
Verzeichnisstruktur für Modelle
| Unterverzeichnis | Dateitypen | Inhalt |
|---|---|---|
checkpoints/ | .safetensors, .ckpt | Hauptgenerierungsmodelle (SD 1.5, SDXL, Flux) |
vae/ | .safetensors, .pt | VAE-Decoder (optional bei modernen Modellen) |
loras/ | .safetensors | LoRA-Feinabstimmungsgewichte |
controlnet/ | .safetensors | ControlNet-Konditionierungsmodelle |
upscale_models/ | .pth, .pt | ESRGAN und andere Upscaling-Modelle |
clip/ | .safetensors | CLIP- und T5-Text-Encoder (für Flux erforderlich) |
Empfohlene Startmodelle
| Modell | Größe | Benötigter VRAM | Ideal für | Quelle |
|---|---|---|---|---|
| Juggernaut XL v9 | 6,9 GB | 6 GB | Fotorealistische Bilder | Civitai |
| SDXL Base 1.0 | 6,9 GB | 6 GB | Allzweck-SDXL | Hugging Face |
| DreamShaper 8 (SD 1.5) | 2,1 GB | 4 GB | Künstlerisch, weniger VRAM | Civitai |
| Flux Schnell | 23,8 GB | 8 GB | Hohe Qualität, 8 Schritte | Hugging Face |
Download über Hugging Face CLI
pip install huggingface-hub
# Speicherort des Modell-Volumes finden
docker volume inspect comfyui_models
# SDXL Base 1.0 in das Checkpoints-Verzeichnis herunterladen
huggingface-cli download stabilityai/stable-diffusion-xl-base-1.0 \
sd_xl_base_1.0.safetensors \
--local-dir /var/lib/docker/volumes/comfyui_models/_data/checkpointsDirekt in den laufenden Container herunterladen
docker exec comfyui wget \
-O /root/comfy/ComfyUI/models/checkpoints/sdxl_base_1.0.safetensors \
"https://huggingface.co/stabilityai/stable-diffusion-xl-base-1.0/resolve/main/sd_xl_base_1.0.safetensors"Nach dem Herunterladen: Zahnradsymbol in ComfyUI anklicken, dann Aktualisieren. Das neue Modell erscheint im Load-Checkpoint-Knoten.
Ersten Bildgenerierungs-Workflow ausführen
Beim Öffnen von ComfyUI unter http://localhost:8188 ist der Standard-Text-zu-Bild-Workflow bereits auf dem Canvas geladen.
Übersicht der Standard-Workflow-Knoten
| Knoten | Zweck | Wichtige Einstellung |
|---|---|---|
| Load Checkpoint | Lädt die Modelldatei | Heruntergeladene .safetensors-Datei auswählen |
| CLIP Text Encode (Positiv) | Kodiert den Prompt | Positiven Prompt hier eingeben |
| CLIP Text Encode (Negativ) | Kodiert Ausschlüsse | Häufig: "verschwommen, niedrige Qualität" |
| Empty Latent Image | Setzt Ausgabeauflösung | Für SDXL auf 1024x1024 ändern |
| KSampler | Führt den Diffusionsprozess aus | Schritte: 20, CFG: 7.0, Sampler: euler |
| VAE Decode | Konvertiert Latentspace in Pixel | Automatisch verbunden |
| Save Image | Speichert das Ergebnis | Dateien in /root/comfy/ComfyUI/output |
Schritt 1: Modell auswählen
Modellnamen im Load-Checkpoint-Knoten anklicken. Alle Dateien in models/checkpoints/ sind gelistet.
Schritt 2: Prompt eingeben
Den als positiven Prompt beschrifteten CLIP-Text-Encode-Knoten anklicken. Startprompt für SDXL:
ein Foto eines Bergsees bei Sonnenuntergang, goldenes Abendlicht, Spiegelungen auf stillem Wasser, fotorealistisch, scharfIm negativen CLIP-Text-Encode-Knoten:
verschwommen, niedrige Qualität, Wasserzeichen, Text, übersättigt, verzerrtSchritt 3: Auflösung einstellen
Empty-Latent-Image-Knoten anklicken. Breite und Höhe für SDXL-Modelle auf 1024 ändern.
Schritt 4: Generieren
Auf Warteschlange (blauer Button oben rechts) klicken oder Strg+Enter drücken. Bei einer 6-GB-GPU mit SDXL bei 1024x1024 und 20 Schritten dauert die Generierung 15-30 Sekunden.
Generierte Bilder werden automatisch in /root/comfy/ComfyUI/output gespeichert:
docker cp comfyui:/root/comfy/ComfyUI/output/. ./output/GPU-Beschleunigung mit NVIDIA Container Toolkit
Das Flag --gpus all im Docker-Befehl erfordert das auf dem Host installierte NVIDIA Container Toolkit.
GPU-Zugriff prüfen
docker exec comfyui nvidia-smiBei funktionierendem GPU-Zugriff erscheint die NVIDIA-Treibertabelle mit GPU-Modell und CUDA-Version.
NVIDIA Container Toolkit auf Ubuntu 22.04 installieren
curl -fsSL https://nvidia.github.io/libnvidia-container/gpgkey | sudo gpg --dearmor -o /usr/share/keyrings/nvidia-container-toolkit-keyring.gpg
curl -s -L https://nvidia.github.io/libnvidia-container/stable/deb/nvidia-container-toolkit.list | \
sed 's#deb https://#deb [signed-by=/usr/share/keyrings/nvidia-container-toolkit-keyring.gpg] https://#g' | \
sudo tee /etc/apt/sources.list.d/nvidia-container-toolkit.list
sudo apt-get update
sudo apt-get install -y nvidia-container-toolkit
sudo nvidia-ctk runtime configure --runtime=docker
sudo systemctl restart dockerVerifizieren:
docker run --rm --gpus all nvidia/cuda:12.1.1-base-ubuntu22.04 nvidia-smiVRAM-Optimierungsflags
| Flag | Wirkung | Wann verwenden |
|---|---|---|
--lowvram | Aggressives Auslagern in System-RAM | 4-6 GB VRAM GPUs |
--medvram | Moderates Auslagern | 6-8 GB VRAM GPUs |
--medvram-sdxl | SDXL-spezifisches Auslagern | SDXL auf 6 GB |
--cpu | GPU vollständig deaktivieren | Keine GPU oder Debugging |
In der Docker-Compose-Datei hinzufügen:
environment:
- CLI_ARGS=--medvram-sdxlFehlerbehebung
| Problem | Ursache | Lösung |
|---|---|---|
| ComfyUI zeigt "CUDA out of memory"-Fehler bei der Generierung | Das Modell benötigt mehr VRAM als verfügbar. SDXL bei 1024x1024 benötigt ohne Optimierungsflags 6+ GB VRAM. | --medvram-sdxl zu CLI_ARGS im Docker-Compose-Umgebungsabschnitt hinzufügen. Oder Bildauflösung auf 768x768 reduzieren. Für Flux-Modelle sind mindestens 8 GB VRAM auch mit --medvram erforderlich. |
| Port 8188 ist beim Containerstart bereits in Verwendung | Ein anderer Prozess oder ein gestoppter ComfyUI-Container belegt Port 8188. | docker ps -a ausführen. Alten Container entfernen: docker rm comfyui. Alternativ Port-Mapping im Run-Befehl auf -p 8189:8188 ändern. |
| Keine Modelle im Load-Checkpoint-Knoten sichtbar | Die Modelldatei befindet sich nicht im Unterverzeichnis checkpoints/ des Modell-Volumes, oder sie wurde nach dem ComfyUI-Start hinzugefügt. | Dateispeicherort prüfen: docker exec comfyui ls /root/comfy/ComfyUI/models/checkpoints/. Dann das Zahnradsymbol anklicken und Aktualisieren, um die Modelliste neu zu laden. |
| "--gpus all" gibt beim Docker-Start einen Fehler | NVIDIA Container Toolkit ist nicht installiert oder Docker wurde nach der Installation nicht neu gestartet. | NVIDIA Container Toolkit gemäß dem GPU-Beschleunigungsabschnitt installieren. Nach der Installation: sudo systemctl restart docker, dann den Docker-Befehl erneut ausführen. |
| Generierte Bilder sind vollständig schwarz oder grau | Der im Modell enthaltene VAE ist inkompatibel oder konnte nicht geladen werden. | Den korrekten eigenständigen VAE für das Modell herunterladen. Für SDXL: sdxl_vae.safetensors von Stability AI auf Hugging Face herunterladen und in models/vae/ ablegen. Dann einen VAE-Loader-Knoten zum Workflow hinzufügen. |
| Custom Nodes laden nach dem Docker-Neustart nicht | Das custom_nodes-Volume ist nicht eingebunden, oder der Knoten hat Python-Abhängigkeiten, die nicht installiert werden konnten. | custom_nodes-Volume-Einbindung im Docker-Befehl oder docker-compose.yml bestätigen. Bei Abhängigkeitsfehlern: docker logs comfyui für den spezifischen Paketnamen prüfen und manuell installieren. |
Alternativen
| Tool | Art | Preis | Ideal für |
|---|---|---|---|
| AUTOMATIC1111 (Stable Diffusion WebUI) | Selbstgehostet | Kostenlos | Einsteiger, die eine einfachere formularbasierte Oberfläche mit großer Erweiterungsbibliothek wünschen. |
| Fooocus | Desktop-App | Kostenlos | Nutzer, die hochwertige SDXL-Ausgabe mit minimaler Konfiguration und ohne Knotengraph-Lernkurve wünschen. |
| InvokeAI | Selbstgehostet | Kostenlos | Nutzer, die eine polierte UI mit integriertem Canvas-basiertem Inpainting und Outpainting wünschen. |
| Forge (WebUI Forge) | Selbstgehostet | Kostenlos | AUTOMATIC1111-Nutzer, die bessere VRAM-Effizienz und Flux-Modellunterstützung auf derselben vertrauten Oberfläche benötigen. |
Häufige Fragen
Ist ComfyUI kostenlos nutzbar?
Ja. ComfyUI ist Open Source unter der GPL-3.0-Lizenz und vollständig kostenlos. Die Software, alle integrierten Knotentypen und ComfyUI Manager sind kostenlos herunterzuladen und zu nutzen. Die einzigen Kosten sind die KI-Modelle selbst (die meisten sind auf Hugging Face und Civitai kostenlos) und die Compute-Hardware oder ein VPS.
Kann ComfyUI ohne GPU betrieben werden?
Ja. Das Flag --cpu über die Umgebungsvariable CLI_ARGS übergeben:
CLI_ARGS=--cpu --lowvramCPU-Inferenz ist deutlich langsamer als GPU-Inferenz. Ein 512x512-Bild mit SD 1.5 bei 20 Schritten dauert 5-10 Minuten auf einer modernen 4-Kern-CPU, verglichen mit 5-10 Sekunden auf einer Mittelklasse-GPU. CPU-Modus ist für das Testen und Debuggen von Workflows geeignet, nicht für den regulären Einsatz.
Was ist der Unterschied zwischen ComfyUI und AUTOMATIC1111?
AUTOMATIC1111 verwendet eine traditionelle formularbasierte Oberfläche mit niedrigerer Lernkurve und großer Erweiterungsbibliothek.
ComfyUI verwendet einen Knotengraphen, bei dem jeder Schritt im Generierungsprozess ein separater verbundener Knoten ist. Dies ist anfänglich schwieriger, gibt aber präzise Kontrolle. Die meisten professionellen Stable-Diffusion-Nutzer sind seit 2024 zu ComfyUI gewechselt.
Wie viel VRAM benötige ich für ComfyUI?
VRAM-Anforderungen nach Modelltyp:
- SD 1.5-Modelle (2 GB Dateien): 4 GB VRAM Minimum, 6 GB komfortabel
- SDXL-Modelle (6,9 GB Dateien): 6 GB VRAM mit --medvram-sdxl, 8 GB ohne Flags
- Flux Schnell (23,8 GB): 8 GB VRAM Minimum mit Optimierungsflags
- Ohne GPU: CPU-Modus mit --cpu --lowvram-Flag
Wie installiert man Custom Nodes in ComfyUI (Docker-Setup)?
ComfyUI Manager installieren:
docker exec -it comfyui bash -c "cd /root/comfy/ComfyUI/custom_nodes && git clone https://github.com/ltdrdata/ComfyUI-Manager.git"
docker restart comfyuiNach dem Neustart erscheint ein Manager-Button in der oberen rechten Ecke des Canvas. Über Manager > Custom Nodes installieren, gewünschte Pakete suchen und installieren.
Server für dieses Projekt
Contabo (gegründet 2003 in München) bietet VPS mit unbegrenztem Traffic, vollem Root-Zugriff und Rechenzentren in Deutschland, USA, Singapur und weiteren Regionen.
Contabo Cloud VPS 40 — €30,25/Monat ansehen →Affiliate-Link. Provision bei Kauf, ohne Mehrkosten für dich.

Verfasst von
AmaraKI-Expertin bei KI Tool Entdeckung. Spezialisiert auf Self-Hosting, lokale KI-Modelle und KI-Automatisierung. Zuletzt aktualisiert: 7. April 2026