Referência Rápida do kubectl
Esta página contém uma lista de comandos e flags do kubectl comumente utilizados.
Nota:
Essas instruções são para o Kubernetes v1.34. Para verificar a versão, use o comandokubectl version.Autocompletar do kubectl
BASH
source <(kubectl completion bash) # configura o autocompletar no bash para o shell atual, o pacote bash-completion deve ser instalado primeiro.
echo "source <(kubectl completion bash)" >> ~/.bashrc # adiciona o autocompletar permanentemente ao seu shell bash.
Você também pode usar um alias abreviado para kubectl que também funciona com o completion:
alias k=kubectl
complete -o default -F __start_kubectl k
ZSH
source <(kubectl completion zsh) # configura o autocompletar no zsh para o shell atual
echo '[[ $commands[kubectl] ]] && source <(kubectl completion zsh)' >> ~/.zshrc # adiciona o autocompletar permanentemente ao seu shell zsh
FISH
Nota:
Requer a versão 1.23 ou superior do kubectl.echo 'kubectl completion fish | source' > ~/.config/fish/completions/kubectl.fish && source ~/.config/fish/completions/kubectl.fish
Uma observação sobre --all-namespaces
Adicionar --all-namespaces acontece com frequência suficiente para que você deva estar ciente da abreviação para --all-namespaces:
kubectl -A
Contexto e configuração do kubectl
Define com qual cluster Kubernetes o kubectl se comunica e modifica as informações de configuração.
Consulte a documentação Autenticando entre Clusters com kubeconfig
para informações detalhadas sobre o arquivo de configuração.
kubectl config view # Mostra as configurações mescladas do kubeconfig.
# usa múltiplos arquivos kubeconfig ao mesmo tempo e visualiza a configuração mesclada
KUBECONFIG=~/.kube/config:~/.kube/kubconfig2
kubectl config view
# Mostra as configurações mescladas do kubeconfig e dados brutos de certificado e segredos expostos
kubectl config view --raw
# obtém a senha para o usuário e2e
kubectl config view -o jsonpath='{.users[?(@.name == "e2e")].user.password}'
# obtém o certificado para o usuário e2e
kubectl config view --raw -o jsonpath='{.users[?(.name == "e2e")].user.client-certificate-data}' | base64 -d
kubectl config view -o jsonpath='{.users[].name}' # exibe o primeiro usuário
kubectl config view -o jsonpath='{.users[*].name}' # obtém uma lista de usuários
kubectl config get-contexts # exibe a lista de contextos
kubectl config get-contexts -o name # obtém todos os nomes de contexto
kubectl config current-context # exibe o contexto atual
kubectl config use-context my-cluster-name # define o contexto padrão como my-cluster-name
kubectl config set-cluster my-cluster-name # define uma entrada de cluster no kubeconfig
# configura a URL para um servidor proxy a ser usado para requisições feitas por este cliente no kubeconfig
kubectl config set-cluster my-cluster-name --proxy-url=my-proxy-url
# adiciona um novo usuário ao seu kubeconf que suporta autenticação básica
kubectl config set-credentials kubeuser/foo.kubernetes.com --username=kubeuser --password=kubepassword
# salva permanentemente o namespace para todos os comandos kubectl subsequentes naquele contexto.
kubectl config set-context --current --namespace=ggckad-s2
# define um contexto utilizando um nome de usuário e namespace específicos.
kubectl config set-context gce --user=cluster-admin --namespace=foo \
&& kubectl config use-context gce
kubectl config unset users.foo # exclui o usuário foo
# alias abreviado para definir/mostrar contexto/namespace (funciona apenas para bash e shells compatíveis com bash, o contexto atual deve ser definido antes de usar kn para definir o namespace)
alias kx='f() { [ "$1" ] && kubectl config use-context $1 || kubectl config current-context ; } ; f'
alias kn='f() { [ "$1" ] && kubectl config set-context --current --namespace $1 || kubectl config view --minify | grep namespace | cut -d" " -f6 ; } ; f'
Kubectl apply
O apply gerencia aplicações por meio de arquivos que definem recursos do Kubernetes.
Ele cria e atualiza recursos em um cluster executando kubectl apply. Esta é a forma
recomendada de gerenciar aplicações Kubernetes em produção. Consulte Kubectl Book.
Criando objetos
Os manifestos do Kubernetes podem ser definidos em YAML ou JSON.
As extensões de arquivo .yaml, .yml e .json podem ser utilizadas.
kubectl apply -f ./my-manifest.yaml # cria recurso(s)
kubectl apply -f ./my1.yaml -f ./my2.yaml # cria a partir de múltiplos arquivos
kubectl apply -f ./dir # cria recurso(s) em todos os arquivos de manifesto no diretório
kubectl apply -f https://example.com/manifest.yaml # cria recurso(s) a partir de url (Nota: este é um domínio de exemplo e não contém um manifesto válido)
kubectl create deployment nginx --image=nginx # inicia uma única instância do nginx
# cria um Job que imprime "Hello World"
kubectl create job hello --image=busybox:1.28 -- echo "Hello World"
# cria uma CronJob que imprime "Hello World" a cada minuto
kubectl create cronjob hello --image=busybox:1.28 --schedule="*/1 * * * *" -- echo "Hello World"
kubectl explain pods # obtém a documentação para manifestos de pod
# Cria múltiplos objetos YAML a partir do stdin
kubectl apply -f - <<EOF
apiVersion: v1
kind: Pod
metadata:
name: busybox-sleep
spec:
containers:
- name: busybox
image: busybox:1.28
args:
- sleep
- "1000000"
---
apiVersion: v1
kind: Pod
metadata:
name: busybox-sleep-less
spec:
containers:
- name: busybox
image: busybox:1.28
args:
- sleep
- "1000"
EOF
# Cria um secret com várias chaves
kubectl apply -f - <<EOF
apiVersion: v1
kind: Secret
metadata:
name: mysecret
type: Opaque
data:
password: $(echo -n "s33msi4" | base64 -w0)
username: $(echo -n "jane" | base64 -w0)
EOF
Visualizando e encontrando recursos
# Comandos get com saída básica
kubectl get services # Lista todos os services no namespace
kubectl get pods --all-namespaces # Lista todos os pods em todos os namespaces
kubectl get pods -o wide # Lista todos os pods no namespace atual, com mais detalhes
kubectl get deployment my-dep # Lista um deployment específico
kubectl get pods # Lista todos os pods no namespace
kubectl get pod my-pod -o yaml # Obtém o YAML de um pod
# Comandos describe com saída detalhada
kubectl describe nodes my-node
kubectl describe pods my-pod
# Lista Services ordenados por nome
kubectl get services --sort-by=.metadata.name
# Lista pods ordenados por contagem de reinicializações
kubectl get pods --sort-by='.status.containerStatuses[0].restartCount'
# Lista PersistentVolumes ordenados por capacidade
kubectl get pv --sort-by=.spec.capacity.storage
# Obtém o rótulo da versão de todos os pods com rótulo app=cassandra
kubectl get pods --selector=app=cassandra -o \
jsonpath='{.items[*].metadata.labels.version}'
# Recupera o valor de uma chave com pontos, ex.: 'ca.crt'
kubectl get configmap myconfig \
-o jsonpath='{.data.ca\.crt}'
# Recupera um valor codificado em base64 com hífens em vez de sublinhados (underscores).
kubectl get secret my-secret --template='{{index .data "key-name-with-dashes"}}'
# Obtém todos os nós de processamento (usa um seletor para excluir resultados que têm um rótulo
# chamado 'node-role.kubernetes.io/control-plane')
kubectl get node --selector='!node-role.kubernetes.io/control-plane'
# Obtém todos os pods em execução no namespace
kubectl get pods --field-selector=status.phase=Running
# Obtém ExternalIPs de todos os nós
kubectl get nodes -o jsonpath='{.items[*].status.addresses[?(@.type=="ExternalIP")].address}'
# Lista nomes de Pods que pertencem a um RC específico
# O comando "jq" é útil para transformações complexas demais para jsonpath, pode ser encontrado em https://jqlang.github.io/jq/
sel=${$(kubectl get rc my-rc --output=json | jq -j '.spec.selector | to_entries | .[] | "\(.key)=\(.value),"')%?}
echo $(kubectl get pods --selector=$sel --output=jsonpath={.items..metadata.name})
# Mostra rótulos para todos os pods (ou qualquer outro objeto Kubernetes que suporte rotulagem)
kubectl get pods --show-labels
# Verifica quais nós estão prontos
JSONPATH='{range .items[*]}{@.metadata.name}:{range @.status.conditions[*]}{@.type}={@.status};{end}{end}' \
&& kubectl get nodes -o jsonpath="$JSONPATH" | grep "Ready=True"
# Verifica quais nós estão prontos com custom-columns
kubectl get node -o custom-columns='NODE_NAME:.metadata.name,STATUS:.status.conditions[?(@.type=="Ready")].status'
# Saída de secrets decodificados sem ferramentas externas
kubectl get secret my-secret -o go-template='{{range $k,$v := .data}}{{"### "}}{{$k}}{{"\n"}}{{$v|base64decode}}{{"\n\n"}}{{end}}'
# Lista todos os Secrets atualmente em uso por um pod
kubectl get pods -o json | jq '.items[].spec.containers[].env[]?.valueFrom.secretKeyRef.name' | grep -v null | sort | uniq
# Lista todos os containerIDs de initContainer de todos os pods
# Útil ao limpar contêineres parados, evitando a remoção de initContainers.
kubectl get pods --all-namespaces -o jsonpath='{range .items[*].status.initContainerStatuses[*]}{.containerID}{"\n"}{end}' | cut -d/ -f3
# Lista eventos ordenados por timestamp
kubectl get events --sort-by=.metadata.creationTimestamp
# Lista todos os eventos de aviso
kubectl events --types=Warning
# Compara o estado atual do cluster com o estado em que o cluster estaria se o manifesto fosse aplicado.
kubectl diff -f ./my-manifest.yaml
# Produz uma árvore delimitada por pontos de todas as chaves retornadas para nós
# Útil ao localizar uma chave dentro de uma estrutura JSON aninhada complexa
kubectl get nodes -o json | jq -c 'paths|join(".")'
# Produz uma árvore delimitada por pontos de todas as chaves retornadas para pods, etc
kubectl get pods -o json | jq -c 'paths|join(".")'
# Produz ENV para todos os pods, assumindo que você tem um contêiner padrão para os pods, namespace padrão e o comando `env` é suportado.
# Útil ao executar qualquer comando suportado em todos os pods, não apenas `env`
for pod in $(kubectl get po --output=jsonpath={.items..metadata.name}); do echo $pod && kubectl exec -it $pod -- env; done
# Obtém o subrecurso status de um deployment
kubectl get deployment nginx-deployment --subresource=status
Atualizando recursos
kubectl set image deployment/frontend www=image:v2 # Atualização gradual dos contêineres "www" do deployment "frontend", atualizando a imagem
kubectl rollout history deployment/frontend # Verifica o histórico de deployments incluindo a revisão
kubectl rollout undo deployment/frontend # Reverte para o deployment anterior
kubectl rollout undo deployment/frontend --to-revision=2 # Reverte para uma revisão específica
kubectl rollout status -w deployment/frontend # Observa o status da atualização gradual do deployment "frontend" até a conclusão
kubectl rollout restart deployment/frontend # Reinicialização gradual do deployment "frontend"
cat pod.json | kubectl replace -f - # Substitui um pod baseado no JSON passado para o stdin
# Substitui forçadamente, exclui e então recria o recurso. Causará uma interrupção do serviço.
kubectl replace --force -f ./pod.json
# Cria um Service para um nginx replicado, que serve na porta 80 e conecta aos contêineres na porta 8000
kubectl expose rc nginx --port=80 --target-port=8000
# Atualiza a versão da imagem (tag) de um pod de contêiner único para v4
kubectl get pod mypod -o yaml | sed 's/\(image: myimage\):.*$/\1:v4/' | kubectl replace -f -
kubectl label pods my-pod new-label=awesome # Adiciona um rótulo
kubectl label pods my-pod new-label- # Remove um rótulo
kubectl label pods my-pod new-label=new-value --overwrite # Sobrescreve um valor existente
kubectl annotate pods my-pod icon-url=http://goo.gl/XXBTWq # Adiciona uma anotação
kubectl annotate pods my-pod icon-url- # Remove anotação
kubectl autoscale deployment foo --min=2 --max=10 # Escalonamento automático de um deployment "foo"
Aplicando patches em recursos
# Atualiza parcialmente um nó
kubectl patch node k8s-node-1 -p '{"spec":{"unschedulable":true}}'
# Atualiza a imagem de um contêiner; spec.containers[*].name é obrigatório porque é uma chave de mesclagem
kubectl patch pod valid-pod -p '{"spec":{"containers":[{"name":"kubernetes-serve-hostname","image":"new image"}]}}'
# Atualiza a imagem de um contêiner usando um json patch com arrays posicionais
kubectl patch pod valid-pod --type='json' -p='[{"op": "replace", "path": "/spec/containers/0/image", "value":"new image"}]'
# Desabilita uma verificação de operacionalidade de deployment usando um json patch com arrays posicionais
kubectl patch deployment valid-deployment --type json -p='[{"op": "remove", "path": "/spec/template/spec/containers/0/livenessProbe"}]'
# Adiciona um novo elemento a um array posicional
kubectl patch sa default --type='json' -p='[{"op": "add", "path": "/secrets/1", "value": {"name": "whatever" } }]'
# Atualiza a contagem de réplicas de um deployment aplicando patch em seu subrecurso de escalonamento
kubectl patch deployment nginx-deployment --subresource='scale' --type='merge' -p '{"spec":{"replicas":2}}'
Editando recursos
Edita qualquer recurso da API no seu editor preferido.
kubectl edit svc/docker-registry # Edita o Service chamado docker-registry
KUBE_EDITOR="nano" kubectl edit svc/docker-registry # Usa um editor alternativo
Escalonando recursos
kubectl scale --replicas=3 rs/foo # Escalona um replicaset chamado 'foo' para 3
kubectl scale --replicas=3 -f foo.yaml # Escalona um recurso especificado em "foo.yaml" para 3
kubectl scale --current-replicas=2 --replicas=3 deployment/mysql # Se o tamanho atual do deployment chamado mysql for 2, escalona mysql para 3
kubectl scale --replicas=5 rc/foo rc/bar rc/baz # Escalona múltiplos controladores de replicação
Excluindo recursos
kubectl delete -f ./pod.json # Exclui um pod usando o tipo e nome especificados no pod.json
kubectl delete pod unwanted --now # Exclui um pod sem período de tolerância
kubectl delete pod,service baz foo # Exclui pods e services com os mesmos nomes "baz" e "foo"
kubectl delete pods,services -l name=myLabel # Exclui pods e services com o rótulo name=myLabel
kubectl -n my-ns delete pod,svc --all # Exclui todos os pods e services no namespace my-ns,
# Exclui todos os pods que correspondem ao padrão awk pattern1 ou pattern2
kubectl get pods -n mynamespace --no-headers=true | awk '/pattern1|pattern2/{print $1}' | xargs kubectl delete -n mynamespace pod
Interagindo com Pods em execução
kubectl logs my-pod # despeja logs do pod (stdout)
kubectl logs -l name=myLabel # despeja logs do pod, com rótulo name=myLabel (stdout)
kubectl logs my-pod --previous # despeja logs do pod (stdout) para uma instanciação anterior de um contêiner
kubectl logs my-pod -c my-container # despeja logs do contêiner do pod (stdout, caso multi-contêiner)
kubectl logs -l name=myLabel -c my-container # despeja logs do contêiner do pod, com rótulo name=myLabel (stdout)
kubectl logs my-pod -c my-container --previous # despeja logs do contêiner do pod (stdout, caso multi-contêiner) para uma instanciação anterior de um contêiner
kubectl logs -f my-pod # transmite logs do pod (stdout)
kubectl logs -f my-pod -c my-container # transmite logs do contêiner do pod (stdout, caso multi-contêiner)
kubectl logs -f -l name=myLabel --all-containers # transmite todos os logs dos pods com rótulo name=myLabel (stdout)
kubectl run -i --tty busybox --image=busybox:1.28 -- sh # Executa pod como shell interativo
kubectl run nginx --image=nginx -n mynamespace # Inicia uma única instância do pod nginx no namespace mynamespace
kubectl run nginx --image=nginx --dry-run=client -o yaml > pod.yaml
# Gera especificação para executar o pod nginx e escreve em um arquivo chamado pod.yaml
kubectl attach my-pod -i # Anexa ao contêiner em execução
kubectl port-forward my-pod 5000:6000 # Escuta na porta 5000 da máquina local e encaminha para a porta 6000 no my-pod
kubectl exec my-pod -- ls / # Executa comando em pod existente (caso de 1 contêiner)
kubectl exec --stdin --tty my-pod -- /bin/sh # Acesso de shell interativo a um pod em execução (caso de 1 contêiner)
kubectl exec my-pod -c my-container -- ls / # Executa comando em pod existente (caso multi-contêiner)
kubectl debug my-pod -it --image=busybox:1.28 # Cria uma sessão de depuração interativa dentro do pod existente e anexa imediatamente a ela
kubectl debug node/my-node -it --image=busybox:1.28 # Cria uma sessão de depuração interativa em um nó e anexa imediatamente a ela
kubectl top pod # Mostra métricas para todos os pods no namespace padrão
kubectl top pod POD_NAME --containers # Mostra métricas para um determinado pod e seus contêineres
kubectl top pod POD_NAME --sort-by=cpu # Mostra métricas para um determinado pod e ordena por 'cpu' ou 'memory'
Copiando arquivos e diretórios de e para contêineres
kubectl cp /tmp/foo_dir my-pod:/tmp/bar_dir # Copia o diretório local /tmp/foo_dir para /tmp/bar_dir em um pod remoto no namespace atual
kubectl cp /tmp/foo my-pod:/tmp/bar -c my-container # Copia o arquivo local /tmp/foo para /tmp/bar em um pod remoto em um contêiner específico
kubectl cp /tmp/foo my-namespace/my-pod:/tmp/bar # Copia o arquivo local /tmp/foo para /tmp/bar em um pod remoto no namespace my-namespace
kubectl cp my-namespace/my-pod:/tmp/foo /tmp/bar # Copia /tmp/foo de um pod remoto para /tmp/bar localmente
Nota:
Okubectl cp requer que o binário 'tar' esteja presente na sua imagem do contêiner. Se o 'tar' não estiver presente, o kubectl cp falhará.
Para casos de uso avançados, como links simbólicos, expansão de caracteres curinga ou preservação do modo de arquivo, considere usar o kubectl exec.tar cf - /tmp/foo | kubectl exec -i -n my-namespace my-pod -- tar xf - -C /tmp/bar # Copia o arquivo local /tmp/foo para /tmp/bar em um pod remoto no namespace my-namespace
kubectl exec -n my-namespace my-pod -- tar cf - /tmp/foo | tar xf - -C /tmp/bar # Copia /tmp/foo de um pod remoto para /tmp/bar localmente
Interagindo com Deployments e Services
kubectl logs deploy/my-deployment # despeja logs do Pod para um Deployment (caso de contêiner único)
kubectl logs deploy/my-deployment -c my-container # despeja logs do Pod para um Deployment (caso multi-contêiner)
kubectl port-forward svc/my-service 5000 # escuta na porta local 5000 e encaminha para a porta 5000 no backend do Service
kubectl port-forward svc/my-service 5000:my-service-port # escuta na porta local 5000 e encaminha para a porta de destino do Service com nome <my-service-port>
kubectl port-forward deploy/my-deployment 5000:6000 # escuta na porta local 5000 e encaminha para a porta 6000 em um Pod criado por <my-deployment>
kubectl exec deploy/my-deployment -- ls # executa comando no primeiro Pod e primeiro contêiner no Deployment (casos de contêiner único ou multi-contêiner)
Interagindo com Nós e cluster
kubectl cordon my-node # Marca my-node como não alocável
kubectl drain my-node # Drena my-node em preparação para manutenção
kubectl uncordon my-node # Marca my-node como alocável
kubectl top node # Mostra métricas para todos os nós
kubectl top node my-node # Mostra métricas para um determinado nó
kubectl cluster-info # Exibe endereços do master e services
kubectl cluster-info dump # Despeja o estado atual do cluster para stdout
kubectl cluster-info dump --output-directory=/path/to/cluster-state # Despeja o estado atual do cluster para /path/to/cluster-state
# Visualiza taints existentes que existem nos nós atuais.
kubectl get nodes -o='custom-columns=NodeName:.metadata.name,TaintKey:.spec.taints[*].key,TaintValue:.spec.taints[*].value,TaintEffect:.spec.taints[*].effect'
# Se um taint com essa chave e efeito já existir, seu valor é substituído conforme especificado.
kubectl taint nodes foo dedicated=special-user:NoSchedule
Tipos de recurso
Lista todos os tipos de recurso suportados junto com seus nomes abreviados, grupo de API, se eles são namespaced, e kind:
kubectl api-resources
Outras operações para explorar recursos da API:
kubectl api-resources --namespaced=true # Todos os recursos namespaced
kubectl api-resources --namespaced=false # Todos os recursos não namespaced
kubectl api-resources -o name # Todos os recursos com saída simples (apenas o nome do recurso)
kubectl api-resources -o wide # Todos os recursos com saída expandida (também conhecida como "wide")
kubectl api-resources --verbs=list,get # Todos os recursos que suportam os verbos de requisição "list" e "get"
kubectl api-resources --api-group=extensions # Todos os recursos no grupo de API "extensions"
Formatando saída
Para exibir detalhes na janela do seu terminal em um formato específico,
adicione a flag -o (ou --output) a um comando kubectl compatível.
| Formato de saída | Descrição |
|---|---|
-o=custom-columns=<spec> |
Imprime uma tabela usando uma lista separada por vírgulas de colunas personalizadas |
-o=custom-columns-file=<filename> |
Imprime uma tabela usando o modelo de colunas personalizadas no arquivo <filename> |
-o=go-template=<template> |
Imprime os campos definidos em um template golang |
-o=go-template-file=<filename> |
Imprime os campos definidos pelo template golang no arquivo <filename> |
-o=json |
Exibe um objeto de API formatado em JSON |
-o=jsonpath=<template> |
Imprime os campos definidos em uma expressão jsonpath |
-o=jsonpath-file=<filename> |
Imprime os campos definidos pela expressão jsonpath no arquivo <filename> |
-o=kyaml |
Exibe um objeto de API formatado em KYAML (alfa, requer a variável de ambiente KUBECTL_KYAML="true"). KYAML é um dialeto experimental específico do Kubernetes em YAML, e pode ser interpretado como YAML. |
-o=name |
Imprime apenas o nome do recurso e nada mais |
-o=wide |
Exibe no formato de texto simples com qualquer informação adicional, e para pods, o nome do nó é incluído |
-o=yaml |
Exibe um objeto de API formatado em YAML |
Exemplos usando -o=custom-columns:
# Todas as imagens executando em um cluster
kubectl get pods -A -o=custom-columns='DATA:spec.containers[*].image'
# Todas as imagens executando no namespace: default, agrupadas por Pod
kubectl get pods --namespace default --output=custom-columns="NAME:.metadata.name,IMAGE:.spec.containers[*].image"
# Todas as imagens excluindo "registry.k8s.io/coredns:1.6.2"
kubectl get pods -A -o=custom-columns='DATA:spec.containers[?(@.image!="registry.k8s.io/coredns:1.6.2")].image'
# Todos os campos sob metadata independentemente do nome
kubectl get pods -A -o=custom-columns='DATA:metadata.*'
Mais exemplos na documentação de referência do kubectl.
Verbosidade de saída e depuração do kubectl
A verbosidade do kubectl é controlada com as flags -v ou --v seguidas por um inteiro
representando o nível de log. As convenções gerais de logging do Kubernetes e os níveis
de log associados são descritos aqui.
| Verbosidade | Descrição |
|---|---|
--v=0 |
Geralmente útil para que isso seja sempre visível para um operador de cluster. |
--v=1 |
Um nível de log padrão razoável se você não quiser verbosidade. |
--v=2 |
Informações úteis de estado estável sobre o service e mensagens de log importantes que podem se correlacionar com mudanças significativas no sistema. Este é o nível de log padrão recomendado para a maioria dos sistemas. |
--v=3 |
Informações estendidas sobre mudanças. |
--v=4 |
Verbosidade de nível de depuração. |
--v=5 |
Verbosidade de nível de rastreamento. |
--v=6 |
Exibe recursos requisitados. |
--v=7 |
Exibe cabeçalhos de requisição HTTP. |
--v=8 |
Exibe conteúdos de requisição HTTP. |
--v=9 |
Exibe conteúdos de requisição HTTP sem truncamento de conteúdos. |
Próximos passos
-
Leia a visão geral do kubectl e aprenda sobre JsonPath.
-
Consulte as opções do kubectl.
-
Consulte as opções do kuberc.
-
Leia também as Convenções de Uso do kubectl para entender como usar o kubectl em scripts reutilizáveis.
-
Veja mais folhas de dicas do kubectl da comunidade.
Feedback
Was this page helpful?
Glad to hear it! Please tell us how we can improve.
Sorry to hear that. Please tell us how we can improve.