ComfyUI Helm chart
This adapter chart runs the public ComfyUI container image and keeps model,
input, output, and user data in one PVC. It avoids the image's boot-time custom
node installation path by starting ComfyUI directly. The image tag and tested
ComfyUI release are recorded in Chart.yaml.
Install the public chart:
helm repo add brunner.ninja https://brunner.ninja/charts
helm repo update brunner.ninja
helm upgrade --install comfyui brunner.ninja/comfyui \
--namespace comfyui --create-namespace --wait --timeout 10m
Set persistence.existingClaim to reuse a pre-existing model/data volume. For
another cluster, leave it empty and configure persistence.size and
persistence.storageClass. args, node placement, and resource sizing can be
overridden for the available CPU/GPU hardware. The chart creates an internal
Service on port 8188; it does not expose the editor publicly by default.
This repository owns the portable Deployment, probes, Service, data-directory
initialization, and optional PVC. A consuming GitOps repository owns only its
selected chart version and cluster values. The homelab instance is managed by
the separate homelab-gitops Application comfyui in namespace ollama.
Validation and releases
Run ./test.sh to lint and render the chart and verify that its Service,
selectors, ports, PVC, mounts, and probes fit together.
Git tags follow the application release (v0.8.2 for ComfyUI 0.8.2). CI uses
git describe --tags --long for immutable package versions; later chart-only
commits retain their count and Git hash. The public chart repository is
brunner.ninja/charts. Gitea Actions needs PACKAGE_USERNAME, PACKAGE_TOKEN,
and GITOPS_TOKEN; the workflow has no Kubernetes credentials.