Kubernetes Web View to list and view all Kubernetes resources https://kube-web-view.readthedocs.io/
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Henning Jacobs e2b7175963 do not fail on limited access 1 일 전
deploy note on container logs/secrets 2 주 전
docs link blog post 3 일 전
examples tweak example 2 일 전
kube_web do not fail on limited access 1 일 전
tests optimize search 2 일 전
.flake8 #12 new option --object-links to link to external tools 1 주 전
.gitignore simple e2e test 3 주 전
.travis.yml Travis CI config 2 주 전
Dockerfile #61 switch to Debian base image to assess performance impact 2 일 전
LICENSE add LICENSE 1 개월 전
Makefile PyPI README/descr 2 일 전
README.md using CalVer 4 일 전
poetry.lock #62 fix concurrency bug where session tokens could leak to other requests 2 일 전
pyproject.toml #62 fix concurrency bug where session tokens could leak to other requests 2 일 전

README.md

Kubernetes Web View

Build Status Documentation Status GitHub tag (latest SemVer) Docker Pulls License CalVer

Kubernetes Web View allows to list and view all Kubernetes resources (incl. CRDs) with permalink-friendly URLs in a plain-HTML frontend. This tool was mainly developed to provide a web-version of kubectl for troubleshooting and supporting colleagues. See the Kubernetes Web View Documentation and try out the live demo.

Goals:

  • handling of any API resource: both core Kubernetes and CRDs
  • permalink-friendly URL paths for giving links to colleagues (e.g. to help troubleshoot)
  • option to work with multiple clusters
  • allow listing different resource types on the same page (e.g. deployments and CRDs with same label)
  • replicate some of the common kubectl features, e.g. -l (label selector) and -L (label columns)
  • simple HTML, only add JavaScript where it adds value
  • pluggable links, e.g. to link to other tools based on resource properties like labels (monitoring, reports, ..)
  • optional: editing resources as YAML manifests (kubectl edit)

Non-goals:

  • application management
  • reporting/visualization
  • fancy UI (JS/SPA)

Quickstart

This will run Kubernetes Web View locally with your existing Kubeconfig:

docker run -it -p 8080:8080 -u $(id -u) -v $HOME/.kube:/.kube hjacobs/kube-web-view

Open http://localhost:8080/ in your browser to see the UI.

Deploying into your cluster

This will deploy a single Pod with Kubernetes Web View into your cluster:

kubectl apply -f deploy/
kubectl port-forward service/kube-web-view 8080:80

Open http://localhost:8080/ in your browser to see the UI.

Running tests

This requires Python 3.7 and poetry and will run unit tests and end-to-end tests with Kind:

make test

The end-to-end (e2e) tests will bootstrap a new Kind cluster, you can run Kubernetes Web View for development against this cluster:

make run.kind

To clean up the e2e test cluster (also needed after a machine reboot):

make clean.e2e

Building the Docker image

make

Developing Locally

To start the Python web server locally with the default kubeconfig (~/.kube/config):

make run