# ComfyUI stack [ComfyUI](https://github.com/comfyanonymous/ComfyUI) — grafowy interfejs do generowania obrazów (Stable Diffusion, Flux, …). Stack oparty na obrazie [`yanwk/comfyui-boot`](https://github.com/YanWenKun/ComfyUI-Docker). Zamiast [Stability Matrix](https://github.com/LykosAI/StabilityMatrix) (GUI desktop) używamy ComfyUI w Dockerze — zgodnie z filozofią headless serwera i tutoriala [03b](../../manual-tutorial/03b-system-tools.md). ## Porty | Serwis | Port | URL | |--------|------|-----| | ComfyUI web UI | **8188** | `http://HOST:8188` | | LocalAI (osobny stack) | 8070 | LLM / chat — **nie równolegle z dużym modelem SD** | ## Jak to działa ```mermaid flowchart LR browser["Przeglądarka :8188"] comfyui["Kontener comfyui"] gpu["RTX 3090 Ti"] models["/data/apps/comfyui/models"] browser --> comfyui comfyui --> gpu comfyui --> models ``` | Element | Opis | |---------|------| | Obraz | `yanwk/comfyui-boot:cu126-slim` | | Konfiguracja | `.env` + `docker-compose.yml` | | Modele | `/data/apps/comfyui/models` (puste na start — pobierz ręcznie lub przez ComfyUI-Manager) | | Pierwszy start | Kopiuje ComfyUI do `/data/apps/comfyui/storage/` (~kilka minut) | ## Struktura ``` stacks/comfyui/ ├── README.md ├── docker-compose.yml ├── .env.example ├── .gitignore └── scripts/ ├── ensure-dirs.sh ├── pull.sh └── start.sh ``` Na dysku `/data`: ``` /data/apps/comfyui/ ├── storage/ # kopia ComfyUI z obrazu (pierwszy start) ├── models/ # checkpoints, LoRA, VAE, … ├── cache/ │ ├── hf-hub/ │ └── torch-hub/ ├── input/ ├── output/ ├── custom_nodes/ └── workflows/ ``` ## Workflow (bez modelu) ```bash cd stacks/comfyui cp .env.example .env ./scripts/pull.sh ./scripts/start.sh ``` Weryfikacja: ```bash curl -s -o /dev/null -w '%{http_code}\n' http://127.0.0.1:8188/ # UI: http://:8188 ``` ## Zmienne `.env` | Zmienna | Opis | Domyślnie | |---------|------|-----------| | `DATA_ROOT` | Mount dysku danych | `/data` | | `COMFYUI_PORT` | Port na hoście | `8188` | | `COMFYUI_IMAGE` | Obraz Docker | `yanwk/comfyui-boot:cu126-slim` | | `CUDA_VISIBLE_DEVICES` | GPU | `0` | | `CLI_ARGS` | Dodatkowe flagi ComfyUI | puste | ## Polityka GPU (LocalAI ↔ ComfyUI) RTX 3090 Ti 24 GB — **jeden** duży workload GPU naraz. Przed startem ComfyUI z dużym modelem (SDXL, Flux): ```bash cd ../localai docker compose --profile localai stop localai ``` Skrypt `start.sh` ostrzega, gdy `localai` jest uruchomiony. W Server UI (port 8091) → Stop/Start stack `localai` lub `comfyui` według potrzeb. ## Modele (później) - **ComfyUI-Manager** w UI (custom node w obrazie yanwk) — pobieranie modeli i węzłów - Ręcznie: pliki do `/data/apps/comfyui/models/checkpoints/` (lub odpowiednie podkatalogi) Szacunki VRAM (przy zatrzymanym LocalAI): | Model | VRAM (orientacyjnie) | |-------|----------------------| | SD 1.5 | ~4–6 GB | | SDXL | ~8–12 GB | | Flux | ~12–20 GB | ## Zarządzanie ```bash docker compose --profile comfyui ps docker compose --profile comfyui logs -f comfyui docker compose --profile comfyui restart comfyui docker compose --profile comfyui down ``` ## Dokumentacja - Tutorial: [manual-tutorial/07-comfyui-stack.md](../../manual-tutorial/07-comfyui-stack.md) - Research Stability Matrix: [`coding-agent/STABILITYMATRIX-RESEARCH.md`](../../coding-agent/STABILITYMATRIX-RESEARCH.md) - Wdrożenie: [`coding-agent/COMFYUI-DEPLOYMENT.md`](../../coding-agent/COMFYUI-DEPLOYMENT.md) Upstream: [github.com/comfyanonymous/ComfyUI](https://github.com/comfyanonymous/ComfyUI)