Огляд
Вивести код завершення команд для вказаного командного інтерпретатора (bash, zsh, fish або powershell). Щоб забезпечити інтерактивне завершення команд kubectl, код оболонки слід опрацювати. Це можна зробити, отримавши його з .bash_profile.
Докладні інструкції про те, як це зробити, можна знайти тут:
- для macOS:
- https://kubernetes.io/docs/tasks/tools/install-kubectl-macos/#enable-shell-autocompletion
- для linux:
- https://kubernetes.io/docs/tasks/tools/install-kubectl-linux/#enable-shell-autocompletion
- для windows:
- https://kubernetes.io/docs/tasks/tools/install-kubectl-windows/#enable-shell-autocompletion
Примітка для користувачів zsh: [1] завершення zsh підтримуються лише у версіях zsh >= 5.2.
kubectl completion SHELL
Приклади
# Встановлення bash completion на macOS за допомогою homebrew
## Якщо використовується Bash 3.2, включений в macOS
brew install bash-completion
## або, якщо використовується Bash 4.1+
brew install bash-completion@2
## Якщо kubectl встановлено через homebrew, це повинно почати працювати негайно
## Якщо ви встановили іншими способами, можливо, вам потрібно додати completion до вашої теки completion
kubectl completion bash > $(brew --prefix)/etc/bash_completion.d/kubectl
# Встановлення bash completion на Linux
## Якщо bash-completion не встановлено на Linux, встановіть пакет 'bash-completion'
## через менеджер пакетів вашого дистрибутива.
## Завантажте код завершення kubectl для bash в поточну оболонку
source <(kubectl completion bash)
## Запишіть код завершення bash у файл і підключіть його з .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
# Завантажте код завершення kubectl для zsh[1] в поточну оболонку
source <(kubectl completion zsh)
# Налаштуйте код завершення kubectl для zsh[1], щоб автоматично завантажуватися при запуску
kubectl completion zsh > "${fpath[1]}/_kubectl"
# Завантажте код завершення kubectl для fish[2] в поточну оболонку
kubectl completion fish | source
# Щоб завантажити завершення для кожної сесії, виконайте один раз:
kubectl completion fish > ~/.config/fish/completions/kubectl.fish
# Завантажте код завершення kubectl для powershell в поточну оболонку
kubectl completion powershell | Out-String | Invoke-Expression
# Налаштуйте код завершення kubectl для powershell, щоб запускатися при старті
## Збережіть код завершення в сценарій і виконайте в профілі
kubectl completion powershell > "$HOME\.kube\completion.ps1"
Add-Content $PROFILE ". '$HOME\.kube\completion.ps1'"
## Виконайте код завершення в профілі
Add-Content $PROFILE "if (Get-Command kubectl -ErrorAction SilentlyContinue) {
kubectl completion powershell | Out-String | Invoke-Expression
}"
## Додайте код завершення безпосередньо в сценарій $PROFILE
kubectl completion powershell >> $PROFILE
Параметри
| -h, --help | |
Довідник completion | |
Успадковані батьківські параметри
| --as string | |
Імʼя користувача, яке використовується для виконання операції. Користувач може бути звичайним користувачем або службовим обліковим записом в просторі імен. | |
| --as-group strings | |
Група, яка використовується для операції; цей прапорець можна повторити для вказівки декількох груп. | |
| --as-uid string | |
UID, який використовується для операції. | |
| --as-user-extra strings | |
Додаткові параметри користувача, які слід використовувати для операції. Цей прапорець можна повторювати, щоб вказати кілька значень для одного і того ж ключа. | |
| --cache-dir string Типово: "$HOME/.kube/cache" | |
Типове розташування теки кешу | |
| --certificate-authority string | |
Шлях до файлу сертифіката для центра сертифікації | |
| --client-certificate string | |
Шлях до файлу клієнтського сертифіката для TLS | |
| --client-key string | |
Шлях до файлу ключа клієнта для TLS | |
| --cluster string | |
Назва файлу kubeconfig кластера, який слід використовувати | |
| --context string | |
Назва контексту kubeconfig, який слід використовувати | |
| --disable-compression | |
Якщо true, відмовляється від стиснення відповіді для всіх запитів до сервера | |
| --insecure-skip-tls-verify | |
Якщо true, сертифікат сервера не буде перевірятися на дійсність. Це зробить ваші HTTPS-зʼєднання небезпечними | |
| --kubeconfig string | |
Шлях до файлу kubeconfig, який слід використовувати для CLI-запитів. | |
| --kuberc string | |
Шлях до файлу kuberc, який буде використовуватися для налаштувань. Цю функцію можна вимкнути, експортувавши функцію KUBECTL_KUBERC=false або вимкнувши функцію KUBERC=off. | |
| --match-server-version | |
Вимагає, щоб версія сервера відповідала версії клієнта | |
| -n, --namespace string | |
Якщо присутній, простір імен для цього CLI-запиту | |
| --password string | |
Пароль для базової автентифікації на API-сервері | |
| --profile string Типово: "none" | |
Імʼя профілю для захоплення. Одне із (none|cpu|heap|goroutine|threadcreate|block|mutex|trace) | |
| --profile-output string Типово: "profile.pprof" | |
Імʼя файлу, в який записується профіль | |
| --request-timeout string Типово: "0" | |
Час очікування перед відмовою у виконанні окремого запиту до сервера. Ненульові значення повинні містити відповідну одиницю часу (наприклад, 1s, 2m, 3h). Значення нуль означає відсутність тайм-ауту запитів. | |
| -s, --server string | |
Адреса та порт сервера API Kubernetes | |
| --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