Skip to content

Commit 046ca02

Browse files
inafevclaude
andcommitted
docs(readme): richer intro covering all components (LB backends, Vault/ESO, NetworkPolicy, CSI, air-gap, GitOps)
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
1 parent 119db0b commit 046ca02

1 file changed

Lines changed: 27 additions & 6 deletions

File tree

README.md

Lines changed: 27 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -26,12 +26,33 @@
2626
<img alt="LoadBalancer" src="https://img.shields.io/badge/LB-MetalLB%20%7C%20NSX%20ALB%20%7C%20kube--vip-0080FF">
2727
</p>
2828

29-
Deploys the **official Traefik chart** (vendored) exposed via a **LoadBalancer**,
30-
with the Traefik **dashboard authenticated against Keycloak** (oauth2-proxy +
31-
ForwardAuth) and **restricted by role** (`traefik-admin`). One umbrella Helm
32-
chart, **portable across on-prem / air-gapped Kubernetes distributions**
33-
**OpenShift, Rancher RKE2, k3s, kubeadm, VMware Tanzu/TKG** — driven by a small
34-
set of **feature flags** with fail-fast validation of impossible combinations.
29+
A single **umbrella Helm chart** that deploys the **official Traefik chart**
30+
(vendored) behind a **LoadBalancer**, with the Traefik **dashboard authenticated
31+
against Keycloak** (oauth2-proxy + ForwardAuth) and **restricted by role**
32+
(`traefik-admin`). It is **portable across on-prem / air-gapped Kubernetes
33+
distributions****OpenShift, Rancher RKE2, k3s, kubeadm, VMware Tanzu/TKG**
34+
driven by a small set of **feature flags**, with **fail-fast validation** that
35+
rejects impossible combinations at `helm template` time instead of shipping a
36+
broken deployment.
37+
38+
Rather than a per-distribution fork, one core composes along a few independent
39+
axes:
40+
41+
- **Distribution**`platform`: OpenShift (SCC-aware UID handling) · RKE2 · k3s ·
42+
kubeadm · generic. ([§2](#2-how-portability-works-orthogonal-axes), [§4](#4-supported-platforms--presets))
43+
- **Load balancer**`loadBalancer.backend`: **MetalLB · NSX ALB (Avi) ·
44+
kube-vip · Cilium** LB-IPAM · generic. ([§4](#4-supported-platforms--presets))
45+
- **Secrets**`secret.mode`: pre-created (Sealed Secrets) · inline (dev) ·
46+
**External Secrets Operator + HashiCorp Vault**. ([§10](#10-secrets-management))
47+
- **Keycloak TLS trust**`caTrust.mode`: none · OpenShift CA injector ·
48+
custom CA ConfigMap · insecure (test). ([§9](#9-feature-flag-reference))
49+
- **Network** — optional **NetworkPolicies** for default-deny CNIs (Calico /
50+
Cilium); storage (**CSI**) is not applicable — the workload is stateless.
51+
([§11](#11-cni--csi))
52+
- **Air-gap** — vendored Traefik chart (no `traefik.github.io` pull) + internal
53+
registry-mirror overrides for every image. ([§12](#12-air-gapped--disconnected))
54+
- **Delivery** — imperative (`install.sh`) or **GitOps** (single multi-source
55+
ArgoCD Application). ([§8](#8-step-by-step-install), [§16](#16-gitops-with-argocd))
3556

3657
> This is the multi-distribution sibling of
3758
> [`traefik-keycloak-openshift-gitops`](https://github.com/nubenetes/traefik-keycloak-openshift-gitops)

0 commit comments

Comments
 (0)