|
2 | 2 | <img src="docs/assets/greencap.png" alt="GreenCap K8s" width="170" /> |
3 | 3 | <h1>GreenCap K8s</h1> |
4 | 4 | <p><strong>Simple Kubernetes cluster management.</strong></p> |
5 | | - <p>A lightweight web platform to monitor and operate the Kubernetes clusters you already run — a friendlier alternative to OpenShift or Rancher for individuals and small teams who study, build, and test on Kubernetes.</p> |
| 5 | + <p>A lightweight web platform to run and operate Kubernetes. One command brings up a local cluster with GreenCap on it — ready to study, build, and test — and you can connect clusters you already run.</p> |
6 | 6 |
|
7 | 7 | <p> |
8 | 8 | <a href="LICENSE"><img src="https://img.shields.io/badge/License-Apache_2.0-blue.svg" alt="License: Apache 2.0" /></a> |
|
24 | 24 |
|
25 | 25 | ## What is GreenCap? |
26 | 26 |
|
27 | | -GreenCap is a web platform for **monitoring and managing external Kubernetes clusters**. You register access to clusters you already run — minikube, kind, managed, or on-prem — and GreenCap gives you a clean UI to see and operate what lives inside them. |
| 27 | +GreenCap is a web platform for **operating Kubernetes through a UI instead of a terminal**. One command (`./setup/setup.sh`) brings up a local cluster with GreenCap running on it — the fastest way to start. You can also connect clusters you already run: minikube, kind, managed, or on-prem. |
28 | 28 |
|
29 | 29 | It's built for a specific audience: **individuals and small/medium teams who study, develop, and test against Kubernetes**, and want the day-to-day operations without the operational weight of an enterprise platform. |
30 | 30 |
|
31 | | -- **It does not provision clusters.** GreenCap is a management layer over clusters that exist outside it — not a cluster lifecycle tool. |
| 31 | +- **Two layers, one install.** `setup.sh` provisions a local cluster to get you started; the app itself is a management layer over clusters — it operates what lives inside them, it is not a cluster lifecycle tool. |
32 | 32 | - **It's not read-only.** GreenCap actively creates, deletes, scales, restarts, and deploys — every action governed by the acting user's Kubernetes RBAC. |
33 | 33 | - **It's multi-user and RBAC-native.** Each non-admin user is backed by a Kubernetes ServiceAccount; their access is exactly what Kubernetes RBAC grants — nothing more. |
34 | 34 |
|
@@ -97,11 +97,13 @@ cd greencap-k8s |
97 | 97 | ./setup/setup.sh |
98 | 98 | ``` |
99 | 99 |
|
100 | | -The wizard provisions a real Kubernetes cluster (minikube), builds and deploys GreenCap into it, and wires up local access. When it finishes: |
| 100 | +The wizard provisions a real Kubernetes cluster (minikube), pulls the published GreenCap image and deploys it, and wires up local access. When it finishes: |
101 | 101 |
|
102 | 102 | - **URL:** http://greencap.local |
103 | 103 | - **Login:** `admin` / `admin` (change it after your first login) |
104 | 104 |
|
| 105 | +> **How the image is provided.** On `amd64` the wizard pulls the prebuilt public image from `ghcr.io/greencapk8s/platform` — no build, no authentication. On `arm64` (Apple Silicon), or when you set `BUILD_LOCAL=true`, it builds from source locally instead; if a pull ever fails, it falls back to a local build automatically, so setup never stalls. Pin a specific release with `PLATFORM_IMAGE_TAG=X.Y.Z ./setup/setup.sh` (defaults to `latest`). |
| 106 | +
|
105 | 107 | To tear everything down: |
106 | 108 |
|
107 | 109 | ```bash |
@@ -129,9 +131,17 @@ Go deeper: |
129 | 131 | - [`docs/adr/`](docs/adr/) — architectural decision records |
130 | 132 | - [`.dev/README.md`](.dev/README.md) — developer guide |
131 | 133 |
|
| 134 | +## Security |
| 135 | + |
| 136 | +- **Encrypted kubeconfig** — cluster credentials are always encrypted before they are persisted. |
| 137 | +- **Native Kubernetes RBAC** — each non-admin user acts through their own ServiceAccount, so every action is authorized by the cluster itself. |
| 138 | +- **One source of truth** — GreenCap does not maintain a parallel permission system. What Kubernetes RBAC grants is exactly what the user can do. |
| 139 | + |
| 140 | +Found a vulnerability? See [SECURITY.md](SECURITY.md). |
| 141 | + |
132 | 142 | ## Contributing |
133 | 143 |
|
134 | | -Contributions are welcome — bug reports, feature ideas, docs, and code. Start with the [contributing guide](CONTRIBUTING.md), and please review our [Code of Conduct](CODE_OF_CONDUCT.md). Found a security issue? See [SECURITY.md](SECURITY.md). |
| 144 | +Contributions are welcome — bug reports, feature ideas, docs, and code. Start with the [contributing guide](CONTRIBUTING.md), and please review our [Code of Conduct](CODE_OF_CONDUCT.md). |
135 | 145 |
|
136 | 146 | ## License |
137 | 147 |
|
|
0 commit comments