|
| 1 | +# Sandbox |
| 2 | + |
| 3 | +The `sandbox` directory is dedicated to experimental code, prototypes, and early-stage integrations for the Innovation Engine project. It is intended as a safe space for trying out new ideas and features before they are considered for inclusion in the main codebase. In particular it includes experiments that focus on integration of Innovation Engine with Headlamp, a UI for Kubernetes. |
| 4 | + |
| 5 | +## What is Headlamp? |
| 6 | + |
| 7 | +[Headlamp](https://headlamp.dev/) is a modern, extensible Kubernetes UI that allows users to manage and visualize their Kubernetes clusters. It supports a plugin system, enabling developers to extend its functionality with custom features and integrations. |
| 8 | + |
| 9 | +### Running Headlamp |
| 10 | + |
| 11 | +A complete copy of Headlamp Desktop application is included in the sandbox directory. This is included for convenience and to ensure that we are developing against a consistent version of Headlamp. However, you should be able to run these plugins in any recent version of Headlamp (if not please file a bug). |
| 12 | + |
| 13 | +#### Install Docker |
| 14 | + |
| 15 | +1. [Install the binaries](https://docs.docker.com/engine/install/ubuntu/) |
| 16 | +2. Configure the docker user: |
| 17 | +```bash |
| 18 | +sudo groupadd docker |
| 19 | +sudo usermod -aG docker $(whoami) |
| 20 | +newgrp docker |
| 21 | +``` |
| 22 | + |
| 23 | +#### Installing Headlamp |
| 24 | + |
| 25 | +1. Download the [latest Headlamp release](https://github.com/kubernetes-sigs/headlamp/releases) as a tarball |
| 26 | +2. Install from the tarball |
| 27 | +```bash |
| 28 | +tar xvzf ./Headlamp-0.30.0-linux-x64.tar.gz |
| 29 | +``` |
| 30 | +3. If using Linux prepare the executable: |
| 31 | +```bash |
| 32 | +cd Headlamp-0.30.0-linux-x64 |
| 33 | +sudo chown root headlamp |
| 34 | +sudo chmod 4755 headlamp |
| 35 | +``` |
| 36 | +4. Run Headlamp |
| 37 | +``` |
| 38 | +./headlamp |
| 39 | +``` |
| 40 | + |
| 41 | +#### Install Minikube plugin for local K8s |
| 42 | + |
| 43 | +1. Locate Minikube in the Headlamp plugin catalog |
| 44 | +2. Click install |
| 45 | +3. Restart Headlamp |
| 46 | +4. Create a minikube cluster in Headlamp `Home -> Load Cluster -> Minikube Add` |
| 47 | + |
| 48 | +## Innovation Engine Headlamp Plugin |
| 49 | + |
| 50 | +The `innovation-engine-headlamp` subfolder contains a Headlamp plugin that integrates the Innovation Engine with the Headlamp UI. This plugin provides: |
| 51 | + |
| 52 | +- A sidebar entry for accessing Innovation Engine features directly from Headlamp. |
| 53 | +- A "Getting Started" page to help users begin using the Innovation Engine. |
| 54 | +- A shell execution interface for running allowlisted commands (such as `ie execute ...`) and viewing their output within the Headlamp UI. |
| 55 | + |
| 56 | +For more details on the plugin's features and how to run it, see the [README](innovation-engine-headlamp/README.md). |
0 commit comments