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-promptAn 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.
-
getDisplay one or many resources -
describeShow details of a specific resource or group of resources -
createCreate a resource by filename or stdin -
replaceReplace a resource by filename or stdin. -
patchUpdate field(s) of a resource using strategic merge patch. -
deleteDelete resources by filenames, stdin, resources and names, or by resources and label selector. -
editEdit a resource on the server -
applyApply a configuration to a resource by filename or stdin -
namespaceSUPERSEDED: Set and view the current Kubernetes namespace -
logsPrint the logs for a container in a pod. -
rolling-updatePerform a rolling update of the given ReplicationController. -
scaleSet a new size for a Deployment, ReplicaSet, Replication Controller, or Job. -
cordonMark node as unschedulable -
drainDrain node in preparation for maintenance -
uncordonMark node as schedulable -
attachAttach to a running container. -
execExecute a command in a container. -
port-forwardForward one or more local ports to a pod. -
proxyRun a proxy to the Kubernetes API server -
runRun a particular image on the cluster. -
exposeTake a replication controller, service, or pod and expose it as a new Kubernetes Service -
autoscaleAuto-scale a Deployment, ReplicaSet, or ReplicationController -
rolloutrollout manages a deployment -
labelUpdate the labels on a resource -
annotateUpdate the annotations on a resource -
configconfig modifies kubeconfig files -
cluster-infoDisplay cluster info -
api-versionsPrint the supported API versions on the server, in the form of "group/version". -
versionPrint the client and server version information. -
explainDocumentation of resources. -
convertConvert config files between different API versions -
topDisplay 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).