Skip to content

Add ComfyUI app (community) - #5509

Open
Chinabanker wants to merge 7 commits into
truenas:masterfrom
Chinabanker:comfyui-app
Open

Add ComfyUI app (community)#5509
Chinabanker wants to merge 7 commits into
truenas:masterfrom
Chinabanker:comfyui-app

Conversation

@Chinabanker

@Chinabanker Chinabanker commented Aug 5, 2026

Copy link
Copy Markdown

App Addition

  • I have opened an issue to discuss this app addition before submitting this pull request. (Related community request: issue #1728 — App Request: SwarmUI / ComfyUI / AI image generation; I replied to the maintainer's open question about image availability there on 2026-08-19.)

AI

  • Part or All of this PR was generated by an LLM.

Description

Adds ComfyUI to the community train.

ComfyUI is a node-graph based GUI/API/backend for diffusion models (image and video generation). This package ships it as a single-container TrueNAS app:

  • Single container, NVIDIA GPU passthrough via the standard gpu_configuration resource
  • 8 named storage mounts (models / input / output / workflows / custom_nodes / user / HuggingFace cache / torch cache) plus an additional-storage list, following the standard storage schema
  • CLI_ARGS environment question for extra ComfyUI flags
  • Web UI portal; container listens on 8188 internally, published by default on host port 30481 (configurable)
  • TCP healthcheck against the in-container port

Image

chinabanker/comfyui-official:cu130

  • Built from the official Comfy-Org source (Comfy-Org/ComfyUI) with its official requirements; Dockerfiles and build logs are public at https://github.com/Chinabanker/comfyui-official
  • PyTorch 2.13.0+cu130 (CUDA 13.0.3), Python 3.12, ComfyUI-Manager included
  • Rebuilt automatically via GitHub Actions when upstream releases change; rolling cu130 tag plus dated tags
  • Why CUDA 13.0: fixes cuBLAS crashes on Blackwell (RTX 50 series); also runs on RTX 30/40

Requires a host driver with CUDA 13.0 support (NVIDIA driver ≥ 590 branch — bundled in TrueNAS SCALE 26).

App Information

Testing

Tested locally on TrueNAS SCALE 26.0.0-BETA.2 with an RTX 5090:

  • basic-values.yaml

Rendered compose validated locally against catalog library 2.3.11: image reference, host port 30481 → container 8188 mapping, all 8 mounts, TCP healthcheck (/dev/tcp/127.0.0.1/8188) and portal are present and correct.

Icons and Screenshots

Please upload the following to the CDN:

app.yaml's icon: field is already set to the predicted CDN path https://media.sys.truenas.net/apps/comfyui/icons/icon.png.

Special Notes

  • TrueNAS floor: CUDA 13.0 requires the driver bundled with TrueNAS SCALE 26. min_scale_version is set to 25.10.0 because no 26.x value exists in the catalog yet — happy to raise it once one lands, or hold the merge until 26 is stable.
  • Runs as root (uid/gid 0): the entrypoint installs ComfyUI-Manager/node dependencies and pip packages into persistent storage on startup and then drops into the server; it currently assumes root. Happy to restructure for a 568 defaults setup if that is preferred — guidance appreciated.
  • First-time setup: none required — ComfyUI-Manager initializes on first start.

Checklist

  • App runs successfully locally (TrueNAS SCALE 26.0.0-BETA.2, RTX 5090)
  • Only modified files under /ix-dev/ or /library/
  • README.md included
  • Multiple test scenarios tested
  • questions.yaml has clear descriptions and follows structure of existing apps
  • All automated CI checks pass (fork PR — CI needs maintainer approval to run)

Chinabanker and others added 2 commits August 5, 2026 08:57
ComfyUI is a powerful and modular Stable Diffusion GUI/API with a
graph/nodes interface. This app uses the community image
chinabanker/comfyui-official:cu128 (built from official Comfy-Org
source, PyTorch 2.11.0+cu128, daily auto-builds).

- NVIDIA GPU passthrough via resources.gpus
- 8 storage mounts (models/input/output/workflows/custom_nodes/user/HF/torch caches)
- CLI_ARGS for extra flags, default --disable-xformers
- TCP healthcheck on the web UI port
- Image tag: cu128 -> cu130 (PyTorch 2.13.0+cu130, CUDA 13.0)
- app_version: 0.30.0 -> 0.30.2
- README: TrueNAS SCALE 26 (driver 590.x) requirement, RTX 30/40/50 support
- cu128 removed from Docker Hub (unfixable Blackwell cuBLAS bug)
@Chinabanker

This comment was marked as spam.

@Chinabanker

Copy link
Copy Markdown
Author

Friendly ping — this PR is ready for review.

Summary of the current state (updated 2026-08-16):

  • Image: chinabanker/comfyui-official:cu130 (PyTorch 2.13.0+cu130, CUDA 13.0.3) — the cu130 line fixes the unfixable Blackwell (sm_120) cuBLAS bug in the CUDA 12.8 line that caused black images / mosaic artifacts / illegal memory access on RTX 50 series GPUs.
  • Runtime floor: requires CUDA 13.0 → TrueNAS 26 bundled driver (590.x). min_scale_version is set to 25.10.0 (the highest value currently available in the catalog); happy to bump it once a TrueNAS 26 min-version value exists.
  • Template render + CI deploy test both pass.

Happy to adjust anything (min_scale_version, storage layout, CLI_ARGS defaults, etc.). Thanks for your time.

- library: 2.3.8 -> 2.3.11 (latest, per CONTRIBUTIONS.md; 2.3.8 removed upstream)
- app_version: 0.30.2 -> 0.33.2 (track upstream ComfyUI)
- sources: add catalog URL
@Chinabanker

Copy link
Copy Markdown
Author

Updated PR to fix self-inflicted issues and align with CONTRIBUTIONS.md:

  • library bumped 2.3.8 → 2.3.11 (latest catalog version; 2.3.8 was removed upstream) — vendored files + lib_version_hash refreshed, rendered compose re-validated OK
  • app_version bumped 0.30.2 → 0.33.2 to track upstream ComfyUI (image rebuilt daily via CI)
  • PR body rewritten to the official app_addition template, including AI disclosure, testing results, checklist, and an icon source link for the CDN upload
  • sources: added the catalog URL

Happy to adjust anything else (e.g. min_scale_version once a 26.x value lands in the catalog).

…p_version to 0.34.0

- questions.yaml default webui_port 8188 -> 30481 (catalog convention: defaults >30k; 30473 was taken by byb-budget)
- docker-compose: add_port with explicit container_port 8188 + healthcheck pinned in-container (host port is user-configurable)
- app_version tracks upstream v0.34.0 (image rebuilt and pushed 2026-08-27)
- README documents the port mapping
@Chinabanker

Copy link
Copy Markdown
Author

Updated the PR (65b2d0b):

  • Default host port 8188 → 30481 (catalog convention of >30k defaults; verified 30481 is unused across ix-dev). The container still listens on 8188 — add_port now passes container_port: 8188 explicitly and the TCP healthcheck targets the in-container port, so any user-configured host port keeps working.
  • app_version → 0.34.0 to track upstream v0.34.0 (the rolling cu130 image was rebuilt and republished today with it).
  • README now documents the mapping (default host port 30481 → container 8188).

Rendered compose re-validated locally against library 2.3.11: ports, mounts, healthcheck and portal all correct.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant