The most powerful and modular diffusion model GUI, api and backend with a graph/nodes interface.
Go to file
clsferguson 97b4d164ed
build(docker): compile SageAttention 2.2 on slim trixie using Debian CUDA toolkit; install wheel into runtime and enable flag
Switch to a two-stage Dockerfile that builds SageAttention 2.2 from source on python:3.12-slim-trixie by explicitly enabling contrib/non-free/non-free-firmware in APT and installing Debian’s nvidia-cuda-toolkit (nvcc) for compilation, then installs the produced cp312 wheel into the slim runtime so --use-sage-attention works at startup. The builder installs Torch cu129 to match the runtime for ABI compatibility and uses pip’s --break-system-packages to avoid a venv while respecting PEP 668 in a controlled way, keeping layers lean and avoiding the prior sources.list and space issues seen on GitHub runners. The final image remains minimal while bundling an up-to-date SageAttention build aligned with the Torch/CUDA stack in use.
2025-09-21 22:54:12 -06:00
.ci Document what the fast_fp16_accumulation is in the portable. (#8973) 2025-07-20 01:24:09 -04:00
.github Update build-release.yml 2025-09-21 22:46:37 -06:00
alembic_db Add support for sqlite database (#8444) 2025-06-11 16:43:39 -04:00
api_server Add Load Image Output node (#6790) 2025-02-18 17:53:01 -05:00
app Update frontend to v1.25.10 and revert navigation mode override (#9522) 2025-08-23 17:54:01 -04:00
comfy Hunyuan refiner vae now works with tiled. (#9836) 2025-09-12 19:46:46 -04:00
comfy_api Add Output to V3 Combo type to match what is possible with V1 (#9813) 2025-09-12 00:44:20 -04:00
comfy_api_nodes convert Moonvalley API nodes to the V3 schema (#9698) 2025-09-12 17:41:26 -04:00
comfy_config Add new fields to the config types (#8507) 2025-06-18 15:12:29 -04:00
comfy_execution Fix progress update crossover between users (#9706) 2025-09-04 19:13:28 -04:00
comfy_extras convert Canny node to V3 schema (#9743) 2025-09-12 17:40:34 -04:00
custom_nodes Lint unused import (#5973) 2024-12-09 15:24:39 -05:00
input LoadLatent and SaveLatent should behave like the LoadImage and SaveImage. 2023-05-18 00:09:12 -04:00
middleware fix: add cache headers for images (#9560) 2025-09-05 14:32:25 -04:00
models Add models/audio_encoders directory. (#9548) 2025-08-25 20:13:54 -04:00
output Initial commit. 2023-01-16 22:37:14 -05:00
script_examples Update comment in api example. (#9708) 2025-09-03 18:43:29 -04:00
tests Fix progress update crossover between users (#9706) 2025-09-04 19:13:28 -04:00
tests-unit fix: add cache headers for images (#9560) 2025-09-05 14:32:25 -04:00
utils Add support for sqlite database (#8444) 2025-06-11 16:43:39 -04:00
.gitattributes Add Veo3 video generation node with audio support (#9110) 2025-08-05 01:52:25 -04:00
.gitignore More API Nodes (#7956) 2025-05-06 04:23:00 -04:00
alembic.ini Add support for sqlite database (#8444) 2025-06-11 16:43:39 -04:00
CODEOWNERS Update CODEOWNERS (#9343) 2025-08-14 19:44:22 -04:00
comfyui_version.py ComfyUI version 0.3.59 2025-09-10 17:25:41 -04:00
CONTRIBUTING.md Add CONTRIBUTING.md (#3910) 2024-07-01 13:51:00 -04:00
cuda_malloc.py Only enable cuda malloc on cuda torch. (#9031) 2025-07-23 19:37:43 -04:00
Dockerfile build(docker): compile SageAttention 2.2 on slim trixie using Debian CUDA toolkit; install wheel into runtime and enable flag 2025-09-21 22:54:12 -06:00
entrypoint.sh chore(bootstrap): trace root-only setup via run() 2025-09-17 14:49:01 -06:00
execution.py remove creation of non-used asyncio_loop (#9284) 2025-08-11 16:48:17 -04:00
extra_model_paths.yaml.example add 'is_default' to model paths config (#4979) 2024-09-19 08:59:55 -04:00
folder_paths.py Add models/audio_encoders directory. (#9548) 2025-08-25 20:13:54 -04:00
hook_breaker_ac10a0.py Prevent custom nodes from hooking certain functions. (#7825) 2025-04-26 20:52:56 -04:00
latent_preview.py Convert latents_ubyte to 8-bit unsigned int before converting to CPU (#6300) 2025-01-28 08:22:54 -05:00
LICENSE Initial commit. 2023-01-16 22:37:14 -05:00
main.py Probably not necessary anymore. (#9646) 2025-08-31 01:32:10 -04:00
new_updater.py Replace print with logging (#6138) 2024-12-20 16:24:55 -05:00
node_helpers.py Add append feature to conditioning_set_values (#8239) 2025-05-22 08:11:13 -04:00
nodes.py Support hunyuan image 2.1 regular model. (#9792) 2025-09-10 02:05:07 -04:00
protocol.py Support for async node functions (#8830) 2025-07-10 14:46:19 -04:00
pyproject.toml ComfyUI version 0.3.59 2025-09-10 17:25:41 -04:00
pytest.ini Execution Model Inversion (#2666) 2024-08-15 11:21:11 -04:00
README.md docs(readme): document baked-in SageAttention 2.2 and default enable via --use-sage-attention 2025-09-21 21:12:04 -06:00
requirements.txt Bump frontend to 1.26.11 (#9809) 2025-09-12 00:46:01 -04:00
server.py fix: add cache headers for images (#9560) 2025-09-05 14:32:25 -04:00

ComfyUI-Docker

An automated Repo for ComfyUI Docker image builds, optimized for NVIDIA GPUs.

AboutFeaturesGetting StartedUsageLicense


About

This repository automates the creation of Docker images for ComfyUI, a powerful and modular stable diffusion GUI and backend. It syncs with the upstream ComfyUI repository, builds a Docker image on new releases, and pushes it to GitHub Container Registry (GHCR).

I created this repo for myself as a simple way to stay up to date with the latest ComfyUI versions while having an easy-to-use Docker image. It's particularly suited for setups with NVIDIA GPUs, leveraging CUDA for accelerated performance.

Built With


Features

  • Automated Sync & Build: Daily checks for upstream releases, auto-merges changes, and builds/pushes Docker images.
  • NVIDIA GPU Ready: Pre-configured with CUDA-enabled PyTorch for seamless GPU acceleration.
  • Non-Root Runtime: Runs as a non-root user for better security.
  • Pre-Installed Manager: Includes ComfyUI-Manager for easy node/extensions management.
  • SageAttention 2.2 baked in: The image compiles SageAttention 2.2/2++ from the upstream repository during docker build, ensuring the latest kernels for modern NVIDIA GPUs are included by default.
  • Auto-enabled at launch: ComfyUI is started with the --use-sage-attention flag so SageAttention is activated automatically on startup (no extra steps required).

Getting Started

Prerequisites

  • Docker: Installed on your host (e.g., Docker Desktop or Engine).
  • NVIDIA GPU: For GPU support (ensure NVIDIA drivers and CUDA are installed on the host).
  • NVIDIA Container Toolkit: For GPU passthrough in Docker (install via the official guide).

Pulling the Image

The latest image is available on GHCR:

docker pull ghcr.io/clsferguson/comfyui-docker:latest

For a specific version (synced with upstream tags, starting at 0.3.57):

docker pull ghcr.io/clsferguson/comfyui-docker:vX.Y.Z

Docker Compose

For easier management, use this docker-compose.yml:

services:
  comfyui:
    image: ghcr.io/clsferguson/comfyui-docker:latest
    container_name: ComfyUI
    runtime: nvidia
    restart: unless-stopped
    ports:
      - 8188:8188
    environment:
      - TZ=America/Edmonton
      - PUID=1000
      - GUID=1000
    gpus: all
    volumes:
      - comfyui_data:/app/ComfyUI/user/default
      - comfyui_nodes:/app/ComfyUI/custom_nodes
      - /mnt/comfyui/models:/app/ComfyUI/models
      - /mnt/comfyui/input:/app/ComfyUI/input
      - /mnt/comfyui/output:/app/ComfyUI/output

Run with docker compose up -d.


Usage

Basic Usage

Access ComfyUI at http://localhost:8188 after starting the container using Docker Compose.

SageAttention

  • SageAttention 2.2 is built into the image and enabled automatically on startup via --use-sage-attention.
  • To verify, check the container logs on startup; ComfyUI will print a line indicating SageAttention is active.

Environment Variables

  • Set via .env file or -e flags in docker compose or docker run.

License

Distributed under the MIT License (same as upstream ComfyUI). See LICENSE for more information.


Contact

Built with ❤️ for easy AI workflows.