The most powerful and modular diffusion model GUI, api and backend with a graph/nodes interface.
Go to file
clsferguson 360a2c4ec7
fix(docker): patch CUDA 12.9 math headers for glibc 2.41 compatibility in Debian Trixie
Add runtime patching of CUDA math_functions.h to resolve compilation conflicts 
between CUDA 12.9 and glibc 2.41 used in Debian Trixie, enabling successful 
Sage Attention builds.

Root Cause:
CUDA 12.9 was compiled with older glibc and lacks noexcept(true) specifications 
for math functions (sinpi, cospi, sinpif, cospif) that glibc 2.41 requires,
causing "exception specification is incompatible" compilation errors.

Math Function Conflicts Fixed:
- sinpi(double x): Add noexcept(true) specification  
- sinpif(float x): Add noexcept(true) specification
- cospi(double x): Add noexcept(true) specification
- cospif(float x): Add noexcept(true) specification

Patch Implementation:
- Use sed to modify /usr/local/cuda-12.9/include/crt/math_functions.h at build time
- Add noexcept(true) to the four conflicting function declarations
- Maintains compatibility with both CUDA 12.9 and glibc 2.41

This resolves the compilation errors:
"error: exception specification is incompatible with that of previous function"

GPU detection and system setup already working perfectly:
- 5x RTX 3060 GPUs detected correctly 
- PyTorch CUDA compatibility confirmed   
- Triton 3.4.0 installation successful 
- RTX 30/40 optimization strategy selected 

With this fix, Sage Attention should compile successfully on Debian Trixie
while maintaining the slim image approach and all current functionality.

References: 
- NVIDIA Developer Forums: https://forums.developer.nvidia.com/t/323591
- Known issue with CUDA 12.9 + glibc 2.41 in multiple projects
2025-09-22 14:56:43 -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 fix(docker): patch CUDA 12.9 math headers for glibc 2.41 compatibility in Debian Trixie 2025-09-22 14:56:43 -06:00
entrypoint.sh fix(entrypoint): resolve Triton installation permission errors blocking Sage Attention 2025-09-22 11:58:15 -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.