The most powerful and modular diffusion model GUI, api and backend with a graph/nodes interface.
Go to file
clsferguson 7b448364d1
fix(build): use CUDA devel builder + venv to build and bundle SageAttention 2.2 wheel; make launch flag effective
Switch the builder stage to nvidia/cuda:12.9.0-devel-ubuntu24.04 and create a Python 3.12 venv to avoid PEP 668 “externally managed” errors, install Torch 2.8.0+cu129 in that venv, and build a cp312 SageAttention 2.2 wheel from upstream; copy and install the wheel in the slim runtime so --use-sage-attention works at startup.
This resolves prior build failures on Debian Trixie slim where CUDA toolkits were unavailable and fixes runtime ModuleNotFoundError by ensuring the module is present in the exact interpreter ComfyUI uses.
2025-09-21 22:15:28 -06:00
.ci Document what the fast_fp16_accumulation is in the portable. (#8973) 2025-07-20 01:24:09 -04:00
.github Add cleanup step in sync-build-release workflow 2025-09-12 20:36:26 -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 fix(build): use CUDA devel builder + venv to build and bundle SageAttention 2.2 wheel; make launch flag effective 2025-09-21 22:15:28 -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.