A terminal UI for watching, inspecting and interacting with Kubernetes clusters.
Tired of running
watch kubectl get pods after applying some changes? Tired
of wating for command completion when using
This project's goal is to provide a terminal-based user interface around
kubectl and kubernetes' API that is quick and convenient to work with,
supporting most of the commonly used actions when interacting with a kubernetes
The focus thereby is on interaction with and inspection and manipulation of existing resources instead of on creating new resources as there are better ways to accomplish the latter.
kwatch is available as a standalone executable or as an
Please ensure you have
kubectl installed somewhere in your
configured it correctly.
kwatch requires Node.js version 10. If you have
this installed you can easily install
kwatch using the following command:
npm install -g kwatch
If you do not have Node.js installed you can instead
download a standalone executable of
kwatch from this project's
Extract the downloaded archive and put the
kwatch binary somewhere in
After installation launch the program using the following command:
Or if you are using a dark color scheme in your terminal, use dark mode:
kwatch -c dark
How to Use
The main user interface component is the resource list which shows the resouces of the type selected in the left pane, the api list, in the currently active kubernetes context and namespace.
Navigate the list using
DOWN keys, search in the list by pressing
which activates typeahead find.
ENTER on a resource shows a menu containing actions which can be
run on the selected resource.
Switch between the resource list and the api list by using
TAB. The api list
as well as most menus can be filtered by typing a search term.
To change the current context (as in
kubectl config use-context ...) press
c. To change the current namespace press
For a reference of available keyboard shortcuts press
For the global shortcuts (like
c, etc.) to be effective the
resource list must be focused.
This project is in an early development phase. Nevertheless it is already quite usable. The main focus has been on designing the user interface. Only a few of the most common actions on resources have been implemented yet.
Actions implemented so far:
- show yaml
- force delete
- exec bash
- exec login bash
- exec shell
- exec login shell
- exec command
- view log
- tail log
kwatch has been tested on systems running Linux and Windows Subsystem for
Linux, using Gnome Terminal, MinTTY and tmux against on-premise kubernetes
clusters (kubeadm) and DOKS kubernetes clusters (versions 1.12, 1.13, 1.14).
Please report bugs using Github issues.
Pull requests are always welcome. Please follow the Angular Commit Message Guidelines (where scope specifies affected components in this project's context instead of the ones defined there). The commit messages are used by semantic-release to decide on release version numbers and to generate changelogs.
This software is distributed under the Apache License, Version 2.0, see LICENSE for more information.