openclaw helm

No introduction found. Create it?

Install

Install with:

helm repo add app-template oci://ghcr.io/bjw-s-labs/charts/
helm install openclaw app-template/app-template -f values.yaml

Examples

See examples from other people.

Top Repositories (3 out of 6)

NameRepoStarsVersionTimestamp
openclawJJGadgets/Biohazard865.0.15 hours ago
openclawmchestr/home-cluster1695.0.12 days ago
openclawm00nwtchr/homelab-cluster374.6.211 days ago

Values

See the most popular values for this chart:

KeyTypes
route.app.hostnames[] (6)
- {{ .Release.Name }}.${SECRET_DOMAIN}
string
string
string
string
string, number
string
string
string
string
string
string
string
boolean
route.codeserver.hostnames[] (3)
- miso-code.cloudjur.com
string
string
string
string
number
string
string
route.opencode.hostnames[] (1)
- ${APP_DNS_OPENCODE:=opencode}
string
string
string
string
string
string
number
string
string
number
number
string
string
string
string
string
string
string
number
string
number
string
string
string
controllers.openclaw.containers.app.env.PATH (5)
/home/node/.local/bin:/home/node/.local/go/bin:/home/node/.local/homebrew/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
string
string
string
number
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
controllers.openclaw.containers.app.image.tag (5)
2026.6.11@sha256:3814fb1f62f9cfc5944de088c5817c68c88b5d721feebe36420b666a90a61ce7
string
string
number, string
string, number
string
boolean
boolean
number
number
controllers.openclaw.containers.app.probes.liveness.spec.exec.command[] (1)
- node
- -e
- require('http').get('http://127.0.0.1:18789/healthz', r => process.exit(r.statusCode < 400 ? 0 : 1)).on('error', () => process.exit(1))
string
number
number
boolean
boolean
number
number
controllers.openclaw.containers.app.probes.readiness.spec.exec.command[] (1)
- node
- -e
- require('http').get('http://127.0.0.1:18789/readyz', r => process.exit(r.statusCode < 400 ? 0 : 1)).on('error', () => process.exit(1))
string
number
number
boolean
number
number
number
boolean
boolean
string
boolean
boolean
controllers.openclaw.containers.app.args[] (1)
- dist/index.js
- gateway
- --allow-unconfigured
string
controllers.openclaw.containers.codeserver.args[] (3)
- --auth
- none
- --user-data-dir
- /home/node/.vscode
- --extensions-dir
- /home/node/.vscode
- --port
- "12321"
- /config
string
string
string
string
string
string
controllers.openclaw.containers.codeserver.image.tag (3)
4.127.0@sha256:4193b3a0c2661bce87b3cafede59e7d50e1e99e35f7c10bece7c2a7e0660c0a8
string
string
string
string
string
string
controllers.openclaw.containers.kube-mcp.image.tag (1)
v0.0.65@sha256:5df586e2c7ced2a3125f6e78923388d80b69de0a2ad1470325b05318f12725bd
string
string
string
string
boolean
string
boolean
string
string
controllers.openclaw.initContainers.init-config.image.tag (2)
2026.7.1@sha256:6a31d44b2944e7adcd2b582bf6fb463111264ebca97a0201795b799135bd102c
string
controllers.openclaw.initContainers.init-config.args[] (1)
- set -e mkdir -p /home/node/.openclaw /home/node/.local/bin /home/node/.local/go if [ ! -f /home/node/.openclaw/openclaw.json ]; then echo '{"gateway":{"mode":"local"}}' > /home/node/.openclaw/openclaw.json fi node /etc/openclaw/migrate-config.js /home/node/.openclaw/openclaw.json export PATH=/home/node/.local/bin:/home/node/.local/go/bin:$PATH # Install gh CLI if not present on PVC if [ ! -f /home/node/.local/bin/gh ]; then echo "Installing gh CLI..." cd /tmp curl -fsSL https://github.com/cli/cli/releases/download/v2.61.0/gh_2.61.0_linux_amd64.tar.gz -o gh.tar.gz tar xzf gh.tar.gz cp gh_2.61.0_linux_amd64/bin/gh /home/node/.local/bin/ rm -rf gh.tar.gz gh_2.61.0_linux_amd64 fi # Install Go if not present on PVC # Skipping go installation due to download issues # Install Homebrew if not present on PVC if [ ! -f /home/node/.local/homebrew/bin/brew ]; then echo "Installing Homebrew..." export HOMEBREW_PREFIX=/home/node/.local/homebrew export HOMEBREW_CELLAR=/home/node/.local/homebrew/Cellar export HOMEBREW_REPOSITORY=/home/node/.local/homebrew mkdir -p $HOMEBREW_PREFIX cd /tmp git clone --depth 1 https://github.com/Homebrew/brew $HOMEBREW_PREFIX fi # Check if pip is available set +e if command -v pip3 >/dev/null 2>&1 || command -v pip >/dev/null 2>&1 || python3 -m pip --version >/dev/null 2>&1; then echo "pip is available" else echo "Installing pip..." cd /tmp curl -fsSL https://bootstrap.pypa.io/get-pip.py -o get-pip.py python3 get-pip.py --user --no-warn-script-location --break-system-packages || \ python3 get-pip.py --user --no-warn-script-location || \ echo "pip install skipped (use python3 -m pip instead)" rm -f get-pip.py fi set -e echo "Init container completed successfully"
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
boolean
string
number
boolean
number
controllers.openclaw.initContainers.init.command[] (1)
- sh
- -c
- set -euo pipefail chmod u+w /home/node/.openclaw || true rm -f /home/node/.openclaw/openclaw.json cp /tmp/openclaw.json /home/node/.openclaw/openclaw.json chown 1000:100 /home/node/.openclaw/openclaw.json chmod 400 /home/node/.openclaw/openclaw.json
string
string
string
controllers.openclaw.initContainers.install-gh.command[] (1)
- sh
- -c
- set -eu # renovate: datasource=github-releases depName=cli/cli GH_VERSION=2.96.0 BIN=/home/node/.local/bin mkdir -p "$BIN" if [ "$(cat "$BIN/.ghver" 2>/dev/null)" != "$GH_VERSION" ]; then wget -qO /tmp/gh.tar.gz "https://github.com/cli/cli/releases/download/v$GH_VERSION/gh_${GH_VERSION}_linux_amd64.tar.gz" tar -xzf /tmp/gh.tar.gz -C /tmp cp "/tmp/gh_${GH_VERSION}_linux_amd64/bin/gh" "$BIN/gh" chmod +x "$BIN/gh" printf '%s' "$GH_VERSION" > "$BIN/.ghver" rm -rf /tmp/gh.tar.gz "/tmp/gh_${GH_VERSION}_linux_amd64" fi
string
string
string
controllers.openclaw.initContainers.install-signal-cli.command[] (1)
- sh
- -c
- set -eu # renovate: datasource=github-releases depName=AsamK/signal-cli SIGNAL_CLI_VERSION=0.14.6 BIN=/home/node/.openclaw/bin mkdir -p "$BIN" if [ ! -x "$BIN/signal-cli" ]; then wget -qO /tmp/signal-cli.tar.gz "https://github.com/AsamK/signal-cli/releases/download/v$SIGNAL_CLI_VERSION/signal-cli-$SIGNAL_CLI_VERSION-Linux-native.tar.gz" tar -xzf /tmp/signal-cli.tar.gz -C "$BIN" chmod +x "$BIN/signal-cli" fi
string
string
string
boolean
number
number
boolean
number
string
string
string
string
number
string
string
controllers.app.containers.app.env.PATH (1)
$(HOME)/.local/bin:$(HOME)/.local/share/mise/shims:$(HOME)/.local/go/bin:/home/linuxbrew/.linuxbrew/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
string
string
string
string
string
string
controllers.app.containers.app.image.tag (1)
2026.7.1@sha256:6a31d44b2944e7adcd2b582bf6fb463111264ebca97a0201795b799135bd102c
string
boolean
boolean
boolean
number
number
boolean
string
boolean
controllers.app.containers.opencode.args[] (1)
- web
- --hostname
- "0.0.0.0"
- --port
- $(HTTP_PORT)
- --cors
- ${APP_DNS_OPENCODE:=opencode}
string
string
string
string
string
number
number
string
string
controllers.app.containers.opencode.env.PATH (1)
$(HOME)/.local/bin:$(HOME)/.local/share/mise/shims:$(HOME)/.local/go/bin:/home/linuxbrew/.linuxbrew/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
string
string
string
string
string
string
controllers.app.containers.opencode.image.tag (1)
1.18.4@sha256:a55db0fdcaca7b28651014f2f7ff8164d6cd188fa0be2fcedf2e4222e5c3b2c9
string
boolean
boolean
boolean
number
number
boolean
string
boolean
string
controllers.app.initContainers.setup.command[] (1)
- sh
- -c
- while [ ! -z "$(pgrep node)" ] || [ ! -s $(HOME)/.openclaw/openclaw.json ]; do echo 'OpenClaw has not been setup, please exec to this container and run `openclaw setup` for the app to startup!'; sleep 60; done;
string
string
string
string
number
string
string
controllers.app.initContainers.setup.env.PATH (1)
$(HOME)/.local/bin:$(HOME)/.local/share/mise/shims:$(HOME)/.local/go/bin:/home/linuxbrew/.linuxbrew/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
string
string
string
string
string
controllers.app.initContainers.setup.image.tag (1)
1.18.4@sha256:a55db0fdcaca7b28651014f2f7ff8164d6cd188fa0be2fcedf2e4222e5c3b2c9
string
boolean
string
boolean
string
string
string
string
string
string
string
string
string
string
string
number
string
string
number
string
number
number
boolean
string
boolean
string
string
string
string
string
boolean
string
string
string
number
string
string
string
string
string
boolean
persistence.data.path (1)
/tank/Apps/openclaw
string
string
string
string
string
string
string
number
string
string
persistence.configmap.name (2)
{{ .Release.Name }}-config
string
string
string
boolean
string
string
string
string
string
persistence.downloads.path (1)
/tank/Storage/Downloads
string
string
string
string
string
string
string
persistence.images.globalMounts[].path (1)
/home/node/.openclaw/workspace/images
string
persistence.images.path (1)
/tank/Apps/comfyui/output
string
string
string
string
boolean
string
boolean
string
string
string
persistence.misc.globalMounts[].path (1)
/home/linuxbrew
/nix
/home/openclaw/go
/home/openclaw/.local/go
/home/openclaw/.local/share/mise
/home/openclaw/.gradle
string
string
string
number
persistence.skills.globalMounts[].path (1)
/skills/prometheus/SKILL.md
/skills/victorialogs/SKILL.md
/skills/autobrr/SKILL.md
/skills/bazarr/SKILL.md
/skills/cross-seed/SKILL.md
/skills/jellyfin/SKILL.md
/skills/jellyseerr/SKILL.md
/skills/plex/SKILL.md
/skills/prowlarr/SKILL.md
/skills/qbittorrent/SKILL.md
/skills/sonarr/SKILL.md
/skills/radarr/SKILL.md
/skills/sabnzbd/SKILL.md
/skills/tautulli/SKILL.md
/skills/kubernetes-events/SKILL.md
/skills/flux/SKILL.md
string
persistence.skills.globalMounts[].subPath (1)
prometheus.md
victorialogs.md
autobrr.md
bazarr.md
cross-seed.md
jellyfin.md
jellyseerr.md
plex.md
prowlarr.md
qbittorrent.md
sonarr.md
radarr.md
sabnzbd.md
tautulli.md
kubernetes-events.md
flux.md
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
rbac.roles.openclaw-read-all.rules[].apiGroups[] (1)
-
- apps
- batch
- networking.k8s.io
- storage.k8s.io
- autoscaling
- policy
- coordination.k8s.io
- rbac.authorization.k8s.io
- apiextensions.k8s.io
- apiregistration.k8s.io
- metrics.k8s.io
- helm.toolkit.fluxcd.io
- kustomize.toolkit.fluxcd.io
- source.toolkit.fluxcd.io
- external-secrets.io
- monitoring.coreos.com
- snapshot.storage.k8s.io
string
rbac.roles.openclaw-read-all.rules[].resources[] (1)
- pods
- pods/log
- nodes
- services
- namespaces
- configmaps
- persistentvolumes
- persistentvolumeclaims
- endpoints
- resourcequotas
- limitranges
- serviceaccounts
- events
- deployments
- daemonsets
- statefulsets
- replicasets
- controllerrevisions
- jobs
- cronjobs
- ingresses
- ingressclasses
- networkpolicies
- storageclasses
- csinodes
- csidrivers
- volumeattachments
- horizontalpodautoscalers
- poddisruptionbudgets
- leases
- roles
- rolebindings
- clusterroles
- clusterrolebindings
- customresourcedefinitions
- apiservices
- nodes
- pods
- helmreleases
- kustomizations
- gitrepositories
- helmrepositories
- ocirepositories
- buckets
- helmcharts
- externalsecrets
- secretstores
- clustersecretstores
- prometheuses
- alertmanagers
- servicemonitors
- podmonitors
- prometheusrules
- thanosrulers
- probes
- volumesnapshots
- volumesnapshotcontents
- volumesnapshotclasses
string
rbac.roles.openclaw-read-all.rules[].verbs[] (1)
- get
- list
- watch
- get
- list
- watch
- get
- list
- watch
- get
- list
- watch
- get
- list
- watch
- get
- list
- watch
- get
- list
- watch
- get
- list
- watch
- get
- list
- watch
- get
- list
- watch
- get
- list
- watch
- get
- list
- watch
- get
- list
- watch
- get
- list
- watch
- get
- list
- watch
- get
- list
- watch
- get
- list
- watch
- get
- list
- watch
string
string
string
string
string
string