An interactive kubernetes client featuring auto-complete using go-prompt.
kube-prompt accepts the same commands as the kubectl, except you don't need to provide the kubectl
prefix.
So it doesn't require the additional cost to use this cli.
And you can integrate other commands via pipe (|
).
>>> get pod | grep web
web-1144924021-2spbr 1/1 Running 4 25d
web-1144924021-5r1fg 1/1 Running 4 25d
web-1144924021-pqmfq 1/1 Running 4 25d
Binaries are available from github release.
macOS (darwin) - amd64
wget https://github.com/c-bata/kube-prompt/releases/download/v1.0.11/kube-prompt_v1.0.11_darwin_amd64.zip
unzip kube-prompt_v1.0.11_darwin_amd64.zip
chmod +x kube-prompt
sudo mv ./kube-prompt /usr/local/bin/kube-prompt
Linux - amd64
wget https://github.com/c-bata/kube-prompt/releases/download/v1.0.11/kube-prompt_v1.0.11_linux_amd64.zip
unzip kube-prompt_v1.0.11_linux_amd64.zip
chmod +x kube-prompt
sudo mv ./kube-prompt /usr/local/bin/kube-prompt
Linux - i386
wget https://github.com/c-bata/kube-prompt/releases/download/v1.0.11/kube-prompt_v1.0.11_linux_386.zip
unzip kube-prompt_v1.0.11_linux_386.zip
chmod +x kube-prompt
sudo mv ./kube-prompt /usr/local/bin/kube-prompt
Linux - arm64
wget https://github.com/c-bata/kube-prompt/releases/download/v1.0.11/kube-prompt_v1.0.11_linux_arm64.zip
unzip kube-prompt_v1.0.11_linux_arm64.zip
chmod +x kube-prompt
sudo mv ./kube-prompt /usr/local/bin/kube-prompt
$ brew install c-bata/kube-prompt/kube-prompt
An unofficial AUR package kube-prompt
is available. Install instructions can be found on the Arch
wiki.
$ GO111MODULE=on go build .
To create a multi-platform binary, use the cross command via make:
$ make cross
- kube-shell: An integrated shell for working with the Kubernetes written in Python using python-prompt-toolkit.
Hopefully support following commands enough to operate kubernetes.
-
get
Display one or many resources -
describe
Show details of a specific resource or group of resources -
create
Create a resource by filename or stdin -
replace
Replace a resource by filename or stdin. -
patch
Update field(s) of a resource using strategic merge patch. -
delete
Delete resources by filenames, stdin, resources and names, or by resources and label selector. -
edit
Edit a resource on the server -
apply
Apply a configuration to a resource by filename or stdin -
namespace
SUPERSEDED: Set and view the current Kubernetes namespace -
logs
Print the logs for a container in a pod. -
rolling-update
Perform a rolling update of the given ReplicationController. -
scale
Set a new size for a Deployment, ReplicaSet, Replication Controller, or Job. -
cordon
Mark node as unschedulable -
drain
Drain node in preparation for maintenance -
uncordon
Mark node as schedulable -
attach
Attach to a running container. -
exec
Execute a command in a container. -
port-forward
Forward one or more local ports to a pod. -
proxy
Run a proxy to the Kubernetes API server -
run
Run a particular image on the cluster. -
expose
Take a replication controller, service, or pod and expose it as a new Kubernetes Service -
autoscale
Auto-scale a Deployment, ReplicaSet, or ReplicationController -
rollout
rollout manages a deployment -
label
Update the labels on a resource -
annotate
Update the annotations on a resource -
config
config modifies kubeconfig files -
cluster-info
Display cluster info -
api-versions
Print the supported API versions on the server, in the form of "group/version". -
version
Print the client and server version information. -
explain
Documentation of resources. -
convert
Convert config files between different API versions -
top
Display Resource (CPU/Memory/Storage) usage
Masashi Shibata
- Twitter: @c_bata_
- Github: @c-bata
- Facebook: Masashi Shibata
This software is licensed under the MIT License (See LICENSE).