Flux Web UI Standalone Installation
This guide will walk you through the steps to set up the Flux Status Web UI as a dedicated deployment in your Kubernetes cluster, separate from the Flux Operator. This setup is useful for OpenShift clusters or environments where you want to isolate the Web UI from the main Flux Operator installation.
Prerequisites
The Kubernetes cluster should have the following components:
- Flux Operator installed in the
flux-systemnamespace. - A FluxInstance deployed in the
flux-systemnamespace.
Install with Helm
You can install the Flux Web UI using the Flux Operator Helm chart,
by creating a dedicated Helm release with web.serverOnly enabled and installCRDs disabled.
This ensures that only the Web UI components are installed, without affecting the existing Flux Operator installation.
apiVersion: fluxcd.controlplane.io/v1
kind: ResourceSet
metadata:
name: flux-web
namespace: flux-system
spec:
inputs:
- version: "*"
resources:
- apiVersion: source.toolkit.fluxcd.io/v1
kind: OCIRepository
metadata:
name: << inputs.provider.name >>
namespace: << inputs.provider.namespace >>
spec:
interval: 30m
url: oci://ghcr.io/controlplaneio-fluxcd/charts/flux-operator
layerSelector:
mediaType: "application/vnd.cncf.helm.chart.content.v1.tar+gzip"
operation: copy
ref:
semver: << inputs.version | quote >>
- apiVersion: helm.toolkit.fluxcd.io/v2
kind: HelmRelease
metadata:
name: << inputs.provider.name >>
namespace: << inputs.provider.namespace >>
spec:
interval: 30m
releaseName: flux-web
serviceAccountName: flux-operator
chartRef:
kind: OCIRepository
name: << inputs.provider.name >>
values:
fullnameOverride: flux-web
installCRDs: false
web:
serverOnly: true
Access the Web UI
Once the Helm release is applied, the Flux Web UI will be deployed in the flux-system namespace.
You can access the Web UI on http://localhost:9080 by port-forwarding the service:
kubectl -n flux-system port-forward svc/flux-web 9080:9080
To expose the Web UI externally, you can configure an Ingress or Gateway API resource as described in the Web Ingress documentation. Make sure to secure the Web UI with TLS and Single Sign-On.