- Notifications
You must be signed in to change notification settings - Fork313
The missing UI for Helm - visualize your releases
License
komodorio/helm-dashboard
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
A simplified way of working with Helm.
Helm Dashboard is anopen-source project which offers a UI-driven way to view the installed Helm charts, see their revision history andcorresponding k8s resources. It also allows users to perform simple actions such as rolling back to arevision or upgrading to a newer version.This project is part ofKomodor's vision tohelp Kubernetes users to navigate and troubleshoot their clusters. It is important to note that Helm Dashboard isNOT an official project by thehelm team.
Key capabilities of the tool:
- See all installed charts and their revision history
- See manifest diff of the past revisions
- Browse k8s resources resulting from the chart
- Easy rollback or upgrade version with a clear and easy manifest diff
- Integration with popular problem scanners
- Easy switch between multiple clusters
- Can be used locally, or installed into Kubernetes cluster
- Does not require Helm or Kubectl installed
All the features of the tool can be discovered via ourfeatures overview page.
Since version 1.0, the recommended install method is to just use standalone binary. It does not require Helm or kubectl to be installed.
Download the appropriaterelease package for your platform, unpack it and just rundashboard
binary from it. See below section for some more CLI parameters to use.
To install dashboard as Helm plugin, simply run Helm command:
helm plugin install https://github.com/komodorio/helm-dashboard.git
To update the plugin to the latest version, run:
helm plugin update dashboard
To uninstall, run:
helm plugin uninstall dashboard
To use the plugin, your machine needs to have workinghelm
and alsokubectl
commands. Helm version 3.4.0+ is required.
After installing, start the UI by running:
helm dashboard
The command above will launch the local Web server and will open the UI in a new browser tab. The command will hangwaiting for you to terminate it in command-line or web UI.
You can see the list of available command-line flags by runninghelm dashboard --help
.
By default, the web server is only available locally. You can change that by specifyingHD_BIND
environment variableto the desired value. For example,0.0.0.0
would bind to all IPv4 addresses or[::0]
would be all IPv6 addresses.This can also be specified using flag--bind <host>
, for example--bind=0.0.0.0
or--bind 0.0.0.0
.
Precedence order: flag
--bind=<host>
> envHD_BIND=<host>
> default valuelocalhost
If your port 8080 is busy, you can specify a different port to use via--port <number>
command-line flag.
If you need to limit the operations to a specific namespace, please use--namespace=...
in your command-line. You can specify multiple namespaces, separated by commas.
If you don't want the browser tab to automatically open, add--no-browser
flag in your command line.
If you want to increase the logging verbosity and see all the debug info, use the--verbose
flag.
Disclaimer: For the sake of improving the project quality, there is user analytics collected by the tool. You can disable this collecting with
--no-analytics
option. The collection is done via DataDog RUM and Heap Analytics. Only the anonymous data is collected, no sensitive information is used.
The official helm chart isavailable here
We have two main channels for supporting the Helm Dashboardusers:Slack community for general conversationsandGitHub issues for real bugs.
Kindly read ourContributing Guide to learn and understand about our development process, how to propose bug fixes and improvements, and how to build and test your changes to Helm Dashboard.
Prerequisites, binaries installed and operational:
- Golang
- Node.js
There is a need to build frontend and then backend as a series of commands, run:
cd frontend&& npm run build&&cd ..go build -o bin/dashboard.
Or justmake build
that will do everything inside.
Then, you can runnpm run dev
fromfrontend
directory to work on frontend with Vite hot reload.
cd frontend&& npm run build&&cd ..go build -o bin\dashboard.exe .
You can just run thedashboard
ordashboard.exe
binary directly.
To install, checkout the source code and run from source dir:
helm plugin install.
A local installation of the plugin just creates a symlink, so making the changes and rebuilding the binary would not requiretoreinstall a plugin.
To use the plugin, run in your terminal:
helm dashboard
Then, use the web UI.
In our GitHub actions, we attach the built binaries as build artifacts, you can download and test it fully assembled.
Also, we uploadunstable
tag for Docker image upon every build ofmain
branch, you can make our Helm chart to use that image by providing values:
image:pullPolicy:Alwaystag:unstable
About
The missing UI for Helm - visualize your releases