Skip to content

Core · Helm Chart

Deploy RavHub Core with Helm

When to choose this path ​

Use this guide if you already operate on Kubernetes and want to manage RavHub with Helm.

Prerequisites ​

  • a working Kubernetes cluster
  • Helm available
  • a compatible StorageClass or PVC strategy
  • image pull credentials for registry.ravhub.app if your registry requires them

Image and edition selection ​

  • registry: registry.ravhub.app
  • Core repository: ravhub-core
  • recommended tag: 0.1.0
  • Core mode in the chart: license.enabled=false

Exact steps ​

1. Create the namespace ​

bash
kubectl create namespace ravhub

2. Add the Helm repository and inspect default values ​

bash
helm repo add ravhub https://repo.ravhub.app/repository/ravhub-charts
helm repo update
helm show values ravhub/ravhub > values.yaml

3. Edit the values file ​

Using the values.yaml you downloaded, edit the fields needed for your deployment.

Values you can keep as-is ​

yaml
license:
  enabled: false
storage:
  type: filesystem
postgresql:
  enabled: true
redis:
  enabled: false
service:
  type: ClusterIP

Values you should always review ​

FieldDescription
image.tagRelease version to deploy (e.g. 0.1.0)
auth.jwt.secretReplace with a secret value
ingress.hosts[].hostYour public domain
persistence.sizeArtifact storage space
api.hostYour public domain for UI URLs

4. Install the release ​

bash
helm install ravhub ravhub/ravhub \
  --namespace ravhub \
  -f values-core.yaml

5. Verify the deployment ​

bash
helm ls -n ravhub
kubectl get pods -n ravhub
kubectl get ingress -n ravhub

Key values to review ​

Image and license ​

FieldTypical valueWhy it matters
global.imageRegistry""Overrides registry for ALL images (RavHub + Bitnami subcharts).
image.tag0.1.0Pins the exact release you deploy.
license.enabledfalseKeeps the release in Core mode.

Access and ingress ​

FieldTypical valueWhy it matters
service.typeClusterIPCommon default behind an ingress controller.
ingress.enabledtruePublishes the web entry point.
ingress.hostspackages.example.comDefines the public host clients will use.
ingress.tlsconfigured or emptyControls TLS at ingress level.

API and UI URLs ​

FieldTypical valueWhy it matters
api.host"repo.ravhub.app"Public domain shown in install command hints.
api.protocolhttpsProtocol for install commands.

Storage and database ​

FieldTypical valueWhy it matters
storage.typefilesystemCore must stay on filesystem.
persistence.size50GiDefines artifact storage capacity.
postgresql.enabledtrueStarts the embedded PostgreSQL subchart.
redis.enabledfalseFine for a single replica baseline deployment.

Rules and dependencies ​

  • license.enabled=false keeps the release in Core mode.
  • If postgresql.enabled=false, you must provide external database settings.
  • If storage.type is not filesystem, the deployment no longer matches Core.
  • If you increase replicaCount above 1, shared storage and Redis become strongly recommended.

How to validate it ​

  • all pods are Running or Completed
  • the ingress exposes the expected host
  • the UI opens on the configured domain
  • the instance starts as Core, not Enterprise

Common issues ​

The chart installs but the UI does not open ​

Check ingress.enabled, ingress.className, and ingress.hosts.

Pods restart because of authentication problems ​

Check auth.jwt.secret.

The PVC does not bind ​

Check persistence.size, persistence.storageClass, and cluster storage support.

The release behaves like Enterprise ​

Check that license.enabled is still false.

Next step ​

Continue with Client usage.

Base documentation site for RavHub.