kubectl completion
概要
為指定的 Shell (bash、zsh、fish 或 powershell) 輸出 Shell 補全程式碼。必須評估 Shell 程式碼才能提供 kubectl 命令的互動式補全。這可以透過從 .bash_profile 來源程式碼來完成。
關於如何執行此操作的詳細說明,請參閱此處
for macOS:
https://kubernetes.dev.org.tw/docs/tasks/tools/install-kubectl-macos/#enable-shell-autocompletion
for linux:
https://kubernetes.dev.org.tw/docs/tasks/tools/install-kubectl-linux/#enable-shell-autocompletion
for windows:
https://kubernetes.dev.org.tw/docs/tasks/tools/install-kubectl-windows/#enable-shell-autocompletion
zsh 使用者注意事項:[1] 僅在 zsh >= 5.2 版本中支援 zsh 補全。
kubectl completion SHELL
範例
# Installing bash completion on macOS using homebrew
## If running Bash 3.2 included with macOS
brew install bash-completion
## or, if running Bash 4.1+
brew install bash-completion@2
## If kubectl is installed via homebrew, this should start working immediately
## If you've installed via other means, you may need add the completion to your completion directory
kubectl completion bash > $(brew --prefix)/etc/bash_completion.d/kubectl
# Installing bash completion on Linux
## If bash-completion is not installed on Linux, install the 'bash-completion' package
## via your distribution's package manager.
## Load the kubectl completion code for bash into the current shell
source <(kubectl completion bash)
## Write bash completion code to a file and source it from .bash_profile
kubectl completion bash > ~/.kube/completion.bash.inc
printf "
# kubectl shell completion
source '$HOME/.kube/completion.bash.inc'
" >> $HOME/.bash_profile
source $HOME/.bash_profile
# Load the kubectl completion code for zsh[1] into the current shell
source <(kubectl completion zsh)
# Set the kubectl completion code for zsh[1] to autoload on startup
kubectl completion zsh > "${fpath[1]}/_kubectl"
# Load the kubectl completion code for fish[2] into the current shell
kubectl completion fish | source
# To load completions for each session, execute once:
kubectl completion fish > ~/.config/fish/completions/kubectl.fish
# Load the kubectl completion code for powershell into the current shell
kubectl completion powershell | Out-String | Invoke-Expression
# Set kubectl completion code for powershell to run on startup
## Save completion code to a script and execute in the profile
kubectl completion powershell > $HOME\.kube\completion.ps1
Add-Content $PROFILE "$HOME\.kube\completion.ps1"
## Execute completion code in the profile
Add-Content $PROFILE "if (Get-Command kubectl -ErrorAction SilentlyContinue) {
kubectl completion powershell | Out-String | Invoke-Expression
}"
## Add completion code directly to the $PROFILE script
kubectl completion powershell >> $PROFILE
選項
-h, --help | |
completion 的說明 |
--as string | |
要模擬操作的使用者名稱。使用者可以是命名空間中的一般使用者或服務帳戶。 | |
--as-group strings | |
要模擬操作的群組,可以重複此標記以指定多個群組。 | |
--as-uid string | |
要模擬操作的 UID。 | |
--cache-dir string 預設值: "$HOME/.kube/cache" | |
預設快取目錄 | |
--certificate-authority string | |
憑證授權單位的憑證檔案路徑 | |
--client-certificate string | |
TLS 的用戶端憑證檔案路徑 | |
--client-key string | |
TLS 的用戶端金鑰檔案路徑 | |
--cluster string | |
要使用的 kubeconfig 叢集名稱 | |
--context string | |
要使用的 kubeconfig 內容名稱 | |
--default-not-ready-toleration-seconds int 預設值: 300 | |
表示預設新增到每個尚未具有此容忍度的 Pod 的 notReady:NoExecute 容忍度的 tolerationSeconds。 | |
--default-unreachable-toleration-seconds int 預設值: 300 | |
表示預設新增到每個尚未具有此容忍度的 Pod 的 unreachable:NoExecute 容忍度的 tolerationSeconds。 | |
--disable-compression | |
如果為 true,則選擇不對所有伺服器請求進行回應壓縮 | |
--insecure-skip-tls-verify | |
如果為 true,則不會檢查伺服器憑證的有效性。這會使您的 HTTPS 連線不安全 | |
--kubeconfig string | |
用於 CLI 請求的 kubeconfig 檔案路徑。 | |
--match-server-version | |
要求伺服器版本與用戶端版本相符 | |
-n, --namespace string | |
如果存在,此 CLI 請求的命名空間範圍 | |
--password string | |
用於 API 伺服器的基本身份驗證密碼 | |
--profile string 預設值: "none" | |
要捕獲的設定檔名稱。選項之一 (none|cpu|heap|goroutine|threadcreate|block|mutex) | |
--profile-output string 預設值: "profile.pprof" | |
要將設定檔寫入的檔案名稱 | |
--request-timeout string 預設值: "0" | |
在放棄單個伺服器請求之前要等待的時間長度。非零值應包含對應的時間單位 (例如 1s、2m、3h)。值為零表示請求永不逾時。 | |
-s, --server string | |
Kubernetes API 伺服器的位址和連接埠 | |
--storage-driver-buffer-duration duration 預設值: 1m0s | |
儲存驅動程式中的寫入將緩衝此持續時間,並作為單個交易提交到非記憶體後端 | |
--storage-driver-db string 預設值: "cadvisor" | |
資料庫名稱 | |
--storage-driver-host string 預設值: "localhost:8086" | |
資料庫主機:連接埠 | |
--storage-driver-password string 預設值: "root" | |
資料庫密碼 | |
--storage-driver-secure | |
使用與資料庫的安全連線 | |
--storage-driver-table string 預設值: "stats" | |
表名稱 | |
--storage-driver-user string 預設值: "root" | |
資料庫使用者名稱 | |
--tls-server-name string | |
用於伺服器憑證驗證的伺服器名稱。如果未提供,則使用用於聯絡伺服器的主機名稱 | |
--token string | |
用於 API 伺服器的身份驗證承載權杖 | |
--user string | |
要使用的 kubeconfig 使用者名稱 | |
--username string | |
用於 API 伺服器的基本身份驗證使用者名稱 | |
--version version[=true] | |
--version、--version=raw 列印版本資訊並結束;--version=vX.Y.Z... 設定報告的版本 | |
--warnings-as-errors | |
將從伺服器收到的警告視為錯誤,並以非零結束代碼結束 |
另請參閱
- kubectl - kubectl 控制 Kubernetes 叢集管理器
此頁面為自動產生。
如果您計劃報告此頁面的問題,請在您的問題描述中提及此頁面是自動產生的。修正可能需要在 Kubernetes 專案的其他位置進行。