Helm Installation
This page provides the general steps to install VUI using Helm, the recommended and supported method for deployment.
Helm simplifies installation, upgrade, and management of VUI components across different environments.
While this guide covers the core installation process, we highly recommend reviewing the
π Installation Scenarios before install.
It offers a set of predefined configurations (override files) tailored to common use cases such as:
- Single-cluster deployment
- Centralized multi-cluster setup
- Agent-only installation
Using one of these scenarios helps you start with the right structure and minimizes configuration errors.
The official Helm chart is available here.
VUI consists of a UI that communicates directly with the API service.
Therefore, the API must be reachable from the clientβs browser. The Helm chart supports both Ingress and NodePort exposure modes to make this possible.
If neither is configured, the application will be unreachable.
Installing VUI via Helm Repositoryβ
Follow these steps:
1. Add the repositoryβ
helm repo add seriohub https://seriohub.github.io/velero-helm/
helm repo update
2. Verify the chart is availableβ
helm search repo seriohub
Expected output:
NAME CHART VERSION APP VERSION DESCRIPTION
seriohub/vui 0.1.6 0.1.6 Velero User Interface: a friendly UI and dashboard...
3. Choose an override file (OPTIONAL)β
Start from one of the predefined override files.
Each file is tailored for a specific installation scenario.
For a basic setup, you can use a file like
single-cluster.yaml
as a starting point.
For advanced customization, refer to the full values.yaml and the chart README.
4. Create the namespaceβ
kubectl create namespace vui
(Optional) To make it your default namespace:
kubectl config set-context --current --namespace=vui
5. Install the chartβ
If you're installing with the default values:
helm install vui seriohub/vui -n vui
If you're using a custom override file:
helm install vui seriohub/vui \
-n vui \
-f values-override.yaml
6. Accessβ
Default login:
- Username:
admin
- Password:
admin
If you used NodePort or Ingress, the application will be accessible at the endpoint configured in exposure.nodePort
or exposure.ingress
.
Otherwise, if you used the default installation, the services are exposed as ClusterIP only.
In local test environments, you'll need to manually forward the ports to access the UI and API from your browser:
kubectl port-forward svc/vui-api-clusterip-svc 30001:80
kubectl port-forward svc/vui-ui-clusterip-svc 30002:80
ClusterIP services are configured via the following Helm values:
exposure.clusterIP.localAddress
exposure.clusterIP.apiPort
In some environments, kubectl port-forward
may fail with a broken pipe error.
This is a known issue that may affect connectivity or cause the UI to hang.
Sometimes a simple page refresh is enough to recover, but we recommend using NodePort or Ingress exposure for better reliability.
This limitation is expected to be resolved in a future release.
7. Upgrade (after config changes)β
helm upgrade vui seriohub/vui \
-n vui \
-f values-override.yaml
8. Uninstallβ
helm uninstall vui -n vui
helm repo remove seriohub
kubectl delete namespace vui
Installing VUI from Cloned Repositoryβ
You can also install the chart from source if you prefer local control or want to modify the chart.
1. Clone the repositoryβ
git clone https://github.com/seriohub/velero-helm.git
cd velero-helm
2. Choose and edit a configuration fileβ
Start from one of the override files in examples/overrides/
as a simplified base.
For detailed parameter descriptions, see the full values.yaml and the README.
3. Create the namespaceβ
kubectl create namespace vui
4. Install the chart locallyβ
helm install vui ./chart \
-n vui \
-f values-override.yaml
5. Upgradeβ
helm upgrade vui ./chart \
-n vui \
-f values-override.yaml
6. Uninstallβ
helm uninstall vui -n vui
kubectl delete namespace vui