ComfyUI mit AMD/ROCm¶
Lokale KI-Bildgenerierung auf einer AMD Radeon – kein NVIDIA, keine Cloud, keine laufenden Kosten. ComfyUI ist die flexibelste Oberfläche dafür (node-basiert). Hier über Docker mit ROCm, damit du dir die Treiber-Bastelei sparst.
Voraussetzungen
- Linux mit installiertem AMD-Grafiktreiber und ROCm-fähiger GPU (RDNA2/RDNA3)
- Docker
- Ordentlich Plattenplatz – SDXL-Modelle sind je 6–7 GB groß
1. Ordner anlegen¶
2. Compose-Datei anlegen¶
compose.yaml:
services:
comfyui:
image: corundex/comfyui-rocm:latest
container_name: comfyui
restart: unless-stopped
ports:
- "8188:8188"
devices:
- /dev/kfd # ROCm-Compute-Interface
- /dev/dri # GPU
group_add:
- video
- render
security_opt:
- seccomp:unconfined
environment:
# Nur nötig, wenn ROCm deine Karte nicht offiziell kennt.
# RX 7000 (RDNA3): 11.0.0 | RX 6000 (RDNA2): 10.3.0
- HSA_OVERRIDE_GFX_VERSION=11.0.0
volumes:
- ./models:/app/models
- ./output:/app/output
3. Starten¶
Sobald To see the GUI go to: http://0.0.0.0:8188 erscheint, ist alles bereit.
Oberfläche öffnen: http://<server-ip>:8188.
Karte wird nicht erkannt?
Prüfe zuerst, ob die GPU im Container sichtbar ist:
Kommt hier nichts, stimmt meist der HSA_OVERRIDE_GFX_VERSION nicht oder dein
User ist nicht in den Gruppen video/render. Letzteres prüfst du mit id.
4. Ein Modell einbinden¶
Lade ein SDXL-Checkpoint (z. B. von einer Modell-Plattform deiner Wahl) und leg die
.safetensors-Datei hier ab:
# Beispielpfad – Datei in den Checkpoints-Ordner kopieren
cp ~/Downloads/mein-modell.safetensors comfyui/models/checkpoints/
Danach in der Oberfläche im Load Checkpoint-Node oben rechts auf das Refresh-Symbol
(oder R drücken) – das Modell taucht in der Auswahl auf.
5. Erstes Bild¶
Der Standard-Workflow ist beim Start schon geladen. Trag im CLIP Text Encode
(Prompt)-Node oben deinen Prompt ein und klick auf Queue Prompt. Das fertige Bild
landet unter output/.
Reproduzierbare Ergebnisse
Der KSampler-Node hat ein Feld seed. Steht es auf randomize, bekommst du
jedes Mal ein anderes Bild. Willst du eins gezielt nachbauen, setz den Seed auf
fixed und notier dir den Wert.
Fertig¶
Du hast jetzt eine lokale Bild-Pipeline, die nach dem Einrichten nichts mehr kostet außer Strom. Perfekte Basis, um später Workflows zu automatisieren oder in andere Dienste einzubinden.