O Kubernetes agradece as melhorias de todos os contribuidores, novos e experientes!
Este site é mantido pelo Kubernetes SIG Docs.
Contribuidores da documentação do Kubernetes podem:
Qualquer pessoa pode abrir uma issue sobre a documentação, ou contribuir com uma mudança por meio de um pull request (PR) para o repositório do Github kubernetes/website.
É recomendável que você se sinta confortável com git e
Github para trabalhar efetivamente na comunidade Kubernetes.
Para se envolver com a documentação:
Algumas tarefas requerem mais confiança e mais acessos na organização do Kubernetes. Veja Participando no SIG Docs para mais detalhes sobre funções e permissões.
kubernetes/website para identificar issues que sejam um bom ponto de partida.O SIG Docs é um grupo de contribuidores que publica e mantém a documentação e o site do Kubernetes. Se envolver com o SIG Docs é uma ótima forma de contribuidores Kubernetes (pessoas desenvolvedoras de features ou outros) terem um grande impacto dentro do projeto Kubernetes.
A comunicação do SIG Docs é feita de diferentes formas:
#sig-docs no slack do Kubernetes.kubernetes-dig-docs, onde acontecem discussões e
decisões oficiais são registradas.#sig-docs e adicionados ao calendário de eventos de comunidade do Kubernetes. Você precisa baixar o cliente do Zoom ou usar um telefone.Existem dois blogs oficiais do Kubernetes, e a CNCF também possui seu próprio blog, onde você pode encontrar informações sobre Kubernetes. No blog principal do Kubernetes, nós (o projeto Kubernetes) gostamos de publicar artigos com diferentes perspectivas e focos específicos, que tenham relação com o Kubernetes.
Com apenas algumas exceções especiais, publicamos conteúdos que não tenham sido submetidos ou publicados em nenhum outro lugar.
Leia as diretrizes do blog para saber mais sobre esse aspecto.
O blog principal do Kubernetes é utilizado pelo projeto para comunicar novas funcionalidades, relatórios da comunidade e quaisquer novidades relevantes para a comunidade Kubernetes. Isso inclui usuários finais e desenvolvedores. A maior parte do conteúdo do blog aborda coisas que acontecem no projeto principal, mas o Kubernetes, como projeto, também incentiva o envio de artigos sobre o que está acontecendo em outras partes do ecossistema!
Qualquer pessoa pode escrever um post para o blog e submetê-lo para publicação. Com apenas algumas exceções especiais, publicamos conteúdos que não tenham sido submetidos ou publicados em nenhum outro lugar.
O blog de contribuidores do Kubernetes é voltado para um público de pessoas que trabalham no Kubernetes, mais do que para pessoas que trabalham com Kubernetes. O projeto Kubernetes deliberadamente publica alguns artigos em ambos os blogs.
Qualquer pessoa pode escrever um post de blog e submetê-lo para revisão.
O projeto Kubernetes não mantém artigos antigos publicados em seus blogs. Isso significa que qualquer artigo publicado há mais de um ano normalmente não será elegível para issues ou pull requests que solicitem alterações. Para evitar estabelecer precedentes, até mesmo pull requests tecnicamente corretos provavelmente serão rejeitados.
No entanto, existem exceções, como as seguintes:
Para qualquer artigo com mais de um ano que não esteja marcado como evergreen, o site exibe automaticamente um aviso informando que o conteúdo pode estar desatualizado.
Você pode marcar um artigo como evergreen definindo evergreen: true no front matter.
Nós só marcamos artigos de blog como mantidos (evergreen: true no front matter) se o projeto Kubernetes puder se comprometer a mantê-los indefinidamente. Alguns artigos realmente merecem isso; por exemplo, o time de comunicação de releases sempre marca os anúncios oficiais de lançamento como evergreen.
Existem dois blogs oficiais do Kubernetes, e a CNCF também possui seu próprio blog, onde você pode encontrar informações sobre Kubernetes. No blog principal do Kubernetes, nós (o projeto Kubernetes) gostamos de publicar artigos com diferentes perspectivas e focos específicos, que tenham relação com o Kubernetes.
Com apenas algumas exceções especiais, publicamos conteúdos que não tenham sido submetidos ou publicados em nenhum outro lugar.
Como autor, você tem três caminhos diferentes para a publicação.
A abordagem recomendada pelo projeto Kubernetes é: envie sua proposta de artigo entrando em contato com a equipe do blog. Você pode fazer isso pelo Slack do Kubernetes (#sig-docs-blog). Para artigos que você deseja publicar apenas no blog de contribuidores, também é possível enviar a ideia diretamente para o SIG ContribEx comms.
A menos que haja algum problema com o seu envio, a equipe do blog / SIG ContribEx irá conectar você com:
Quando a equipe conecta você com outro autor, a ideia é que vocês se apoiem mutuamente, revisando os rascunhos um do outro. Você não precisa ser especialista no assunto; a maioria das pessoas que lerá o artigo também não será. Nós, a equipe de blog do Kubernetes, chamamos esse outro autor de parceiro de escrita.
O editor está lá para ajudar você ao longo da jornada, do rascunho até a publicação. Ele pode aprovar seu artigo diretamente para publicação ou pode organizar o processo de aprovação.
Leia escrever um artigo para blog para saber mais sobre o processo.
O segundo caminho para escrever para nossos blogs é começar diretamente com um pull request no GitHub. A equipe do blog não recomenda essa abordagem; o GitHub é bastante útil para colaboração em código, mas não é ideal para escrita de textos longos.
É totalmente aceitável abrir um pull request inicial provisório com um commit vazio, e em seguida, trabalhar fora do GitHub antes de retornar ao PR inicial.
Assim como no caminho recomendado, tentaremos encontrar um parceiro de escrita e um editor do blog para você. Eles ajudarão você a preparar o artigo para publicação.
O terceiro caminho é voltado para artigos sobre alterações no Kubernetes relacionadas a um lançamento de versão. Sempre que há um lançamento de versão, a equipe de Release Comms assume o controle do calendário de publicações do blog. Pessoas que adicionam funcionalidades a uma versão, ou que estão planejando outras alterações que o projeto precisa anunciar, podem entrar em contato com o Release Comms para que seu artigo seja planejado, redigido, revisado e eventualmente publicado.
Para o blog do Kubernetes, a equipe do blog geralmente programa publicações de artigos em dias úteis (Calendário Gregoriano, como utilizado nos EUA e em outros países). Quando é importante publicar em uma data específica que cai em um fim de semana, a equipe tenta acomodar essa necessidade.
A seção sobre escrever um artigo para blog explica o que fazer:
draft: true no front matter)Quando o bot Prow faz o merge do PR que você escreve, o artigo continua como rascunho e não é publicado. Um contribuidor do Kubernetes (você, seu parceiro de escrita ou alguém da equipe do blog) abre então um pequeno PR de acompanhamento marcando o artigo para publicação. Ao fazer o merge desse segundo PR, o artigo deixa de ser rascunho e passa a ser publicado automaticamente.
No dia em que o artigo está programado para ser publicado, a automação aciona o build do site e o artigo se torna visível.
Após apresentar sua ideia, incentivamos você a usar o HackMD (um editor Markdown web) ou um documento do Google Docs para compartilhar uma versão editável do texto. Seu parceiro de escrita pode ler seu rascunho, e em seguida, fazer sugestões ou fornecer outros comentários, além de verificar se o conteúdo está alinhado com as diretrizes do blog.
Ao mesmo tempo, você normalmente será o parceiro de escrita dele e poderá seguir nosso guia sobre como apoiar o trabalho dele.
Você deve assinar o CLA caso ainda não tenha feito isso. É recomendável iniciar esse processo cedo; se você estiver escrevendo como parte do seu trabalho, talvez precise verificar com a equipe jurídica ou com seu gestor para garantir que você está autorizado a assinar.
A equipe do blog recomenda que você utilize o HackMD ou um documento do Google Docs, para preparar e compartilhar uma versão inicial do texto do artigo que possa ser editada em tempo real.
Seu parceiro de escrita pode comentar e / ou fornecer feedback sobre seu rascunho e irá (ou deveria) verificar se ele está de acordo com as diretrizes. Ao mesmo tempo, você será o parceiro de escrita dele e seguirá o guia que explica como você irá apoiar o trabalho dele.
Nesta fase, não se preocupe muito em acertar a formatação Markdown exatamente.
Se houver imagens, você pode colar versões bitmap para receber um feedback inicial. A equipe do blog pode ajudar você (mais tarde no processo) a preparar as ilustrações para a publicação final.
Confira o formato Markdown de posts existentes no repositório do site no GitHub.
Se você ainda não estiver familiarizado, leia noções básicas de contribuição. Esta seção da página pressupõe que você não possui um clone local do seu fork e que você está trabalhando através da interface web do GitHub. Você precisa criar um fork remoto do repositório do site caso ainda não tenha.
No repositório do GitHub, clique no botão Criar novo arquivo. Copie o conteúdo existente do HackMD ou Google Docs e cole no editor. Mais detalhes sobre o conteúdo do arquivo serão fornecidos posteriormente nesta seção. Nomeie o arquivo de acordo com o título proposto para o post do blog, mas não inclua a data no nome do arquivo. Os revisores do blog trabalharão com você para definir o nome final do arquivo e a data que o artigo será publicado.
Ao salvar o arquivo, o GitHub irá guiá-lo através do processo de pull request.
Seu parceiro de escrita pode revisar o seu envio e trabalhar com você no feedback e detalhes finais. Um editor do blog aprova seu pull request para o merge, como um rascunho que ainda não foi agendado.
O arquivo Markdown que você escrever deve usar o formato YAML do front matter do Hugo.
Aqui está um exemplo:
---
layout: blog
title: "Seu Título Aqui"
draft: true # será alterado para date: YYYY-MM-DD antes da publicação
slug: texto-em-minusculo-para-o-link-sem-espacos # opcional
author: >
Autor-1 (Afiliação),
Autor-2 (Afiliação),
Autor-3 (Afiliação)
---
draft: true ao front matter do artigo)Certifique-se de usar títulos Markdown de segundo nível (## não #) como o nível de título mais alto no artigo. O title que você define no front matter se torna o título de primeiro nível da página.
Você deve seguir o guia de estilo, mas com as seguintes exceções:
{{< caution >}}). Isso porque as chamadas são direcionadas a leitores de documentação, e artigos de blog não são documentação.{{< code_sample >}}, e muitas vezes é melhor (mais fácil de manter) que não o usem.Para ilustrações, diagramas ou gráficos, utilize o shortcode figure sempre que possível. Você deve definir um atributo alt para acessibilidade.
Para ilustrações e diagramas técnicos, tente usar gráficos vetoriais. A equipe do blog recomenda SVG em vez de formatos de diagrama raster (bitmap / pixel) e também recomenda SVG em vez de Mermaid (você ainda pode capturar o código-fonte do Mermaid em um comentário). A preferência por SVG em vez de Mermaid se deve ao fato de que, quando os mantenedores atualizam o Mermaid ou fazem alterações na renderização do diagrama, eles podem não ter uma maneira fácil de entrar em contato com o autor original do artigo do blog para verificar se as alterações estão corretas.
O guia de diagramas destina-se à documentação do Kubernetes, não a artigos de blog. Ainda assim, é bom segui-lo, mas:
A exigência de imagens escaláveis (vetoriais) torna o processo mais difícil para pessoas menos familiarizadas com o assunto enviarem artigos; o Kubernetes SIG Docs continua buscando maneiras de reduzir essa barreira. Se você tiver ideias sobre como facilitar esse processo, por favor, ofereça-se para ajudar.
Para outras imagens (como fotos), a equipe do blog recomenda fortemente o uso de atributos alt. É aceitável usar um atributo alt vazio para os casos em que o software de acessibilidade não deve mencionar a imagem, mas essa é uma situação rara.
No momento em que você marcar sua solicitação de pull request como pronta para revisão, cada mensagem de commit deve ser um breve resumo do trabalho que está sendo feito. A primeira mensagem de commit deve fazer sentido como uma descrição geral da postagem do blog.
Exemplos de uma boa mensagem de commit:
Exemplos de mensagens ruins de commit:
Assim que você achar que o artigo está pronto para o merge, você deve fazer squash dos commits em seu pull request; se você não tiver certeza de como fazer isso, não hesite em pedir ajuda à equipe do blog.
Estas diretrizes abrangem o blog principal do Kubernetes e o blog de contribuidores do Kubernetes.
Todo o conteúdo do blog também deve aderir à política geral do guia de conteúdo.
Certifique-se de estar familiarizado com as seções de introdução de contribuindo para os blogs do Kubernetes, não apenas para aprender sobre os dois blogs oficiais e as diferenças entre eles, mas também para obter uma visão geral do processo.
O projeto Kubernetes aceita apenas conteúdo original, em inglês.
O projeto Kubernetes não pode aceitar conteúdo para o blog se ele já tiver sido enviado ou publicado fora do projeto Kubernetes.
Os blogs oficiais não estão disponíveis como meio para reaproveitar conteúdo existente de terceiros como se fosse conteúdo novo.
Essa restrição também se aplica à promoção de outros projetos da Linux Foundation e da CNCF. Muitos projetos da CNCF possuem seus próprios blogs. Estes geralmente são uma escolha melhor para publicações sobre um projeto específico, mesmo que esse projeto tenha sido criado especificamente para funcionar com Kubernetes (ou com Linux, etc.).
Os artigos devem conter conteúdo que se aplique de forma ampla à comunidade Kubernetes. Por exemplo, um envio deve focar no Kubernetes upstream, e não em configurações específicas de fornecedores. Para artigos enviados ao blog principal que não sejam artigos espelho, os hiperlinks no artigo devem normalmente direcionar para a documentação oficial do Kubernetes. Ao fazer referências externas, os links devem ser diversificados - por exemplo, um envio não deve conter apenas links para o blog de uma única empresa.
Os blogs oficiais do Kubernetes não são o local para propostas de fornecedores ou para artigos que promovam uma solução específica de fora do Kubernetes.
Às vezes, esse é um equilíbrio delicado. Você pode pedir orientação no Slack (#sig-docs-blog) para entender se um post é apropriado para o blog do Kubernetes e / ou para o blog de contribuidores - não hesite em entrar em contato.
O guia de conteúdo se aplica incondicionalmente a artigos de blog e aos PRs que os adicionam. Tenha em mente que algumas restrições no guia indicam que são relevantes apenas para a documentação; essas restrições marcadas não se aplicam a artigos do blog.
O site está localizado em vários idiomas; o inglês é o idioma base para todas as outras localizações. Mesmo que você fale outro idioma e fique feliz em fornecer uma localização, isso deve ser feito em um pull request separado (consulte idiomas por PR).
Você deve escrever conteúdo original e deve ter permissão para licenciar esse conteúdo para a Cloud Native Computing Foundation (para que o projeto Kubernetes possa publicá-lo legalmente). Isso significa que não somente o plágio direto é proibido, mas também que você não pode escrever um artigo do blog se não tiver permissão para atender às condições de licenciamento de direitos autorais da CNCF (por exemplo, se o seu empregador tiver uma política de propriedade intelectual que restrinja o que você tem permissão para fazer).
A licença do blog permite o uso comercial do conteúdo para fins comerciais, mas não o contrário.
Tópicos relacionados à participação ou aos resultados das atividades dos SIGs do Kubernetes estão sempre no tópico (consulte o trabalho da Equipe de Comunicação de Contribuidores para suporte a esses posts).
O projeto normalmente espelha esses artigos em ambos os blogs.
O site do Kubernetes possui uma licença de Provedor de Conteúdo de Internet (ICP) do governo da China. Embora seja improvável que isso seja um problema, o Kubernetes não pode publicar artigos que seriam bloqueados pela filtragem oficial de conteúdo da internet do governo chinês.
Além do guia de estilo geral, os artigos de blog devem (não obrigatoriamente) se alinhar às recomendações de estilo específicas para blogs.
O restante desta página é uma orientação adicional; não são regras rígidas que os artigos devem seguir, mas os revisores provavelmente irão (e devem) solicitar ajustes em artigos que obviamente não estejam alinhados com as recomendações aqui descritas.
Para ilustrações - incluindo diagramas ou gráficos - utilize o shortcode figure sempre que possível. Você deve definir um atributo alt para acessibilidade.
Utilize imagens vetoriais para ilustrações, diagramas técnicos e gráficos similares; o formato SVG é fortemente recomendado.
Artigos que utilizam imagens rasterizadas para ilustrações são mais difíceis de manter e, em alguns casos, a equipe do blog pode solicitar que o autor revise o artigo antes da publicação.
Os posts do blog devem buscar ser à prova do futuro
Aqui estão alguns exemplos de conteúdo apropriado para o blog principal do Kubernetes:
Aqui estão alguns exemplos de conteúdo apropriado para o blog de contribuidores do Kubernetes:
No entanto, o projeto não publicará:
Esta seção descreve como revisar conteúdo.
Qualquer pessoa pode revisar um pull request da documentação. Visite a seção pull requests no repositório do site Kubernetes para ver os pull requests abertos.
Revisar os pull requests da documentação é uma ótima maneira de se apresentar à comunidade Kubernetes. Isso ajuda você a aprender a base de código e construir a confiança com outros colaboradores.
Antes de revisar, é uma boa ideia:
Antes de começar uma revisão:
Em geral, revise os pull requests de conteúdo e estilo em inglês. A Figura 1 descreve as etapas para o processo de revisão. Seguem os detalhes para cada etapa.
Figura 1. Etapas do processo de revisão.
Acesse https://github.com/kubernetes/website/pulls. Você verá uma lista de todas as solicitações de pull requests abertos no site e na documentação do Kubernetes.
Filtre os PRs abertos usando um ou todos os labels seguintes:
cncf-cla: yes (Recomendado): PRs enviados por colaboradores que não assinaram o CLA não podem ser feito o merge. Consulte Assinar o CLA para obter mais informações.language/pt (Recomendado): Filtro para PRs em português.size/<size>: Filtro para PRs com um determinado tamanho. Se você é novo, comece com PRs menores.Além disso, certifique-se que o PR não esteja marcado como work in progress. Os PRs que usam o label work in progress ainda não estão prontos para revisão.
Depois de selecionar um PR para revisar, entenda a mudança:
issues vinculadas
Vá para a aba Files changed para iniciar sua revisão.
Clique no símbolo + ao lado da linha que você deseja comentar.
Preencha com todos os comentários que você tenha sobre a linha e clique em Add single comment (se você tiver apenas um comentário para fazer) ou Start a review (se você tiver vários comentários para fazer)
Quando terminar, clique em Review changes na parte superior da página. Aqui, você pode adicionar um resumo da sua revisão (e deixar alguns comentários positivos para o colaborador!). Por favor, sempre use o "Comentário"
Evite clicar no botão "Request changes" ao concluir sua revisão. Se você quiser bloquear o merge do PR antes que outras alterações sejam realizadas, você pode deixar um comentário "/hold". Mencione por que você está definindo o bloqueio e, opcionalmente, especifique as condições sob as quais o bloqueio pode ser removido por você ou por outros revisores.
Evite clicar no botão "Approve" ao concluir sua revisão. Deixar um comentário "/approve" é recomendado na maioria dos casos.
Ao revisar, use como ponto de partida o seguinte.
issue separada (primeiro, verifique se não existe uma issue existente sobre isso).Como revisor, se você identificar pequenos problemas com um PR que não são essenciais para o significado, como erros de digitação ou espaços em branco incorretos, sinalize seus comentários com nit:.
Isso permite que o autor saiba que esta parte do seu feedback não é uma crítica.
Se você estiver considerando um pull request e todo o feedback restante estiver marcado como um nit, você pode realizar o merge do PR de qualquer maneira.
Nesse caso, muitas vezes é útil abrir uma issue sobre os nits restantes.
Considere se você é capaz de atender aos requisitos para marcar esse nova issue como uma Good First Issue; se você puder, esses são uma boa fonte.
Os tópicos desta seção fornecem orientações gerais para o estilo de escrita, formatação e organização do conteúdo, e como utilizar as customizações do Hugo específicas para a documentação do Kubernetes.
Esta página contém orientações para a documentação do Kubernetes.
Se você tiver dúvidas sobre o que é permitido, junte-se ao canal #sig-docs no Slack do Kubernetes e pergunte!
Você pode se registrar no Slack do Kubernetes através do endereço https://slack.k8s.io/.
Para informações sobre como criar novo conteúdo para a documentação do Kubernetes, siga o guia de estilo.
O código-fonte para o website do Kubernetes, incluindo a documentação, é armazenado no repositório kubernetes/website.
Localizada dentro da pasta kubernetes/website/content/<codigo-do-idioma>/docs,
a maior parte da documentação do Kubernetes é específica para o
projeto Kubernetes.
A documentação do Kubernetes permite conteúdo de projetos de terceiros somente quando:
A documentação do Kubernetes contém exemplos aplicados de projetos no projeto Kubernetes — projetos que existem nas organizações kubernetes e kubernetes-sigs do GitHub.
Links para conteúdo ativo no projeto Kubernetes sempre são permitidos.
O Kubernetes requer alguns conteúdos de terceiros para funcionar. Exemplos incluem agentes de execução de contêiner (containerd, CRI-O, Docker), políticas de rede (plugins CNI), controladores Ingress, e sistemas de log.
A documentação pode conter vínculos com software de código aberto de terceiros fora do projeto Kubernetes somente quando estes projetos são necessários para o funcionamento do Kubernetes.
Sempre que possível, a documentação do Kubernetes utiliza links para fontes canônicas de documentação ao invés de hospedar conteúdo duplicado.
Conteúdo duplicado requer o dobro de esforço (ou mais!) para manter e fica obsoleto mais rapidamente.
Se você tem dúvidas sobre o conteúdo permitido, junte-se ao canal #sig-docs do Slack do Kubernetes e faça sua pergunta!
Esta página fornece orientações de estilo para escrita da documentação do Kubernetes. Estas são orientações, não regras. Utilize seu melhor julgamento e sinta-se livre para propor alterações neste documento através de um pull request.
Para informações adicionais sobre como criar novo conteúdo para a documentação do Kubernetes, leia o Guia de Conteúdo da Documentação.
Mudanças no guia de estilo são feitas pelo SIG Docs como um grupo. Para propor uma alteração ou adição, inclua o tópico na agenda de uma das reuniões futuras do SIG Docs, e participe da reunião para fazer parte da discussão.
A documentação do Kubernetes foi traduzida para diversas línguas (veja READMEs das Localizações).
A forma para localização de documentação em uma língua diferente está descrita em localizando a documentação do Kubernetes.
Quando você se referir especificamente a interações com um objeto da API, utilize UpperCamelCase, também conhecido como Pascal case. Você poderá encontrar formatação de maiúsculas e minúsculas diferente, como por exemplo "configMap", na referência da API. Ao escrever documentação geral, prefira a utilização de upper camel case, chamando o objeto de "ConfigMap".
Quando você estiver discutindo um objeto da API, utilize a formatação de maiúsculas e minúsculas no estilo de sentença.
Os exemplos a seguir focam no estilo de formatação de maiúsculas e minúsculas. Para mais informações sobre como formatar nomes de objetos da API, revise a orientação relacionada no manual de estilo de código.
| Faça | Não faça |
|---|---|
| O recurso HorizontalPodAutoscaler é responsável por ... | O Horizontal pod autoscaler é responsável por ... |
| Um objeto PodList é uma lista de Pods. | Um objeto Pod List é uma lista de Pods. |
O objeto Volume contém um campo hostPath. |
O objeto volume contém um campo hostPath. |
| Cada objeto ConfigMap é parte de um namespace. | Cada objeto configMap é parte de um namespace. |
| Para o gerenciamento de dados confidenciais, considere utilizar a API de Secrets. | Para o gerenciamento de dados confidenciais, considere utilizar a API de segredos. |
Utilize chevrons (< e >) para espaços reservados. Comunique ao leitor o que o espaço reservado significa. Por exemplo:
kubectl describe pod <nome-do-pod> -n <namespace>
Se o nome do namespace do Pod for default, você pode omitir o paramêtro '-n'.
| Faça | Não faça |
|---|---|
| Clique em Fork. | Clique em "Fork". |
| Selecione Other. | Selecione "Other". |
| Faça | Não faça |
|---|---|
| Um cluster é um conjunto de nós ... | Um "cluster" é um conjunto de nós ... |
| Estes componentes formam a camada de gerenciamento. | Estes componentes formam a camada de gerenciamento. |
| Faça | Não faça |
|---|---|
Abra o arquivo envars.yaml. |
Abra o arquivo envars.yaml. |
Navegue até o diretório /docs/tutorials. |
Navegue até o diretório /docs/tutorials. |
Abra o arquivo /_data/concepts.yaml. |
Abra o arquivo /_data/concepts.yaml. |
| Faça | Não faça |
|---|---|
| eventos são registrados com um "estágio associado". | eventos são registrados com um "estágio associado." |
| A cópia é chamada de "fork". | A cópia é chamada de "fork." |
Para código embutido em um documento HTML, utilize a tag <code>. Em um documento
Markdown, utilize os símbolos de crase (`).
| Faça | Não faça |
|---|---|
O comando kubectl run cria um Pod. |
O comando "kubectl run" cria um pod. |
O kubelet em cada nó obtém um Lease ... |
O kubelet em cada nó obtem um lease... |
Um PersistentVolume representa armazenamento durável ... |
Um PersistentVolume representa armazenamento durável ... |
Para gerenciamento declarativo, utilize kubectl apply. |
Para gerenciamento declarativo, utilize "kubectl apply". |
Circunde exemplos de código com três símbolos de crase. (```) |
Circunde exemplos de código com quaisquer outras sintaxes. |
Utilize um único símbolo de crase para circundar código embutido. Por exemplo, var example = true. |
Utilize dois asteriscos (**) ou um subtraço (_) para circundar código embutido. Por exemplo, var example = true. |
| Utilize três símbolos de crase antes e depois de um bloco de código de múltiplas linhas para blocos de código cercados. | Utilize blocos de código de múltiplas linhas para criar diagramas, fluxogramas, ou outras ilustrações. |
| Utilize nomes de variáveis significativos que possuem um contexto. | Utilize nomes de variáveis como 'foo', 'bar' e 'baz' que não são significativos e não possuem contexto. |
| Remova espaços em branco em final de linha no código. | Adicione espaços em branco no código, onde estes são importantes, pois os leitores de tela lerão os espaços em branco também. |
| Faça | Não faça |
|---|---|
Especifique o valor do campo replicas no arquivo de configuração. |
Especifique o valor do campo "replicas" no arquivo de configuração. |
O valor do campo exec é um objeto do tipo ExecAction. |
O valor do campo "exec" é um objeto do tipo ExecAction. |
Execute o processo como um DaemonSet no namespace kube-system. |
Execute o processo como um DaemonSet no namespace kube-system. |
| Faça | Não faça |
|---|---|
| O kubelet preserva a estabilidade do nó. | O kubelet preserva a estabilidade do nó. |
O kubectl gerencia a busca e a autenticação com o servidor da API. |
O kubectl gerencia a busca e a autenticação com o servidor da API. |
Execute o processo com o certificado, kube-apiserver --client-ca-file=FILENAME. |
Execute o processo com o certificado, kube-apiserver --client-ca-file=FILENAME. |
| Faça | Não faça |
|---|---|
A ferramenta kubeadm inicializa e provisiona máquinas em um cluster. |
kubeadm inicializa e provisiona ferramentas em um cluster. |
| O kube-scheduler é o escalonador padrão para o Kubernetes. | kube-scheduler é o escalonador padrão para o Kubernetes. |
| Faça | Não faça |
|---|---|
| O servidor da API do Kubernetes oferece uma especificação OpenAPI. | O apiserver oferece uma especificação OpenAPI. |
| APIs agregadas são servidores de API subordinados. | APIs agregadas são APIServers subordinados. |
Para valores de campos do tipo texto ou inteiro, utilize o estilo normal sem aspas.
| Faça | Não faça |
|---|---|
Especifique o valor Always para o campo imagePullPolicy. |
Especifique o valor "Always" para o campo imagePullPolicy. |
Especifique o valor nginx:1.16 para o campo image. |
Especifique o valor nginx:1.16 para o campo image. |
Especifique o valor 2 para o campo replicas. |
Especifique o valor 2 para o campo replicas. |
Esta seção discorre sobre como referenciar recursos da API na documentação.
O Kubernetes utiliza a palavra "recurso" para se referir a recursos da API, como
pod, deployment, e demais objetos. Também utilizamos "recurso" para falar de
requisições e limites de recursos de CPU e memória. Sempre se refira a recursos
da API como "recursos da API" para evitar confusão com recursos de CPU e memória.
As diferentes terminologias da API do Kubernetes são:
pods, namespaces)pod, secret)Sempre utilize "recurso" ou "objeto" ao se referir a um recurso da API em documentação. Por exemplo, utilize "um objeto Secret" ao invés de apenas "um Secret".
Sempre formate nomes de recursos da API utilizando UpperCamelCase, também conhecido como PascalCase, e formatação de código.
Para código embutido em um documento HTML, utilize a tag <code>. Em um documento
Markdown, utilize o sinal de crase (`).
Não separe um nome de objeto da API em palavras individuais. Por exemplo, escreva
PodTemplateList no lugar de Pod Template List.
Para mais informações sobre o PascalCase e formatação de código, por favor revise as orientações relacionadas nas seções Utilize UpperCamelCase para objetos da API e Utilize estilo de código para código embutido, comandos e objetos da API.
Para mais informações sobre as terminologias da API do Kubernetes, por favor revise a orientação relacionada sobre terminologia da API do Kubernetes.
| Faça | Não faça |
|---|---|
| kubectl get pods | $ kubectl get pods |
Verifique que o Pod está rodando no seu nó escolhido:
kubectl get pods --output=wide
A saída é semelhante a:
NAME READY STATUS RESTARTS AGE IP NODE
nginx 1/1 Running 0 13s 10.200.0.4 worker0
Exemplos de código e de configuração que incluem informação da versão devem ser consistentes com o texto que os acompanha.
Se a informação é específica para uma versão, a versão do Kubernetes deve ser
definida na seção prerequisites dos modelos de página de
tarefa ou de
tutorial.
Assim que a página for salva, a seção prerequisitos é exibida com o título
Antes de você começar.
Para especificar uma versão do Kubernetes para uma página de tarefa ou de
tutorial, inclua a chave min-kubernetes-server-version na seção de
front matter.
Se o exemplo de YAML for um arquivo avulso, procure e revise os tópicos que o incluem como uma referência. Verifique que quaisquer tópicos que estejam utilizando o YAML avulso têm a informação de versão apropriada definida. Se um arquivo avulso YAML não for referenciado em nenhum tópico, considere apagá-lo ao invés de atualizá-lo.
Por exemplo, se você estiver escrevendo um tutorial que é relevante para a versão 1.8 do Kubernetes, o front matter do seu arquivo Markdown deve ser semelhante ao demonstrado abaixo:
---
title: <seu título de tutorial aqui>
min-kubernetes-server-version: v1.8
---
Nos exemplos de código e configuração, não inclua comentários sobre versões alternativas. Tenha o cuidado de não incluir afirmações incorretas em comentários nos seus exemplos, como por exemplo:
apiVersion: v1 # versões mais antigas usam...
kind: Pod
...
Uma lista de termos específicos do Kubernetes para serem utilizados de forma consistente em todo o website.
| Term | Usage |
|---|---|
| Kubernetes | Kubernetes deve sempre ser escrito com K maiúsculo. |
| Docker | Docker deve sempre ser escrito com D maiúsculo. |
| SIG Docs | Escreva SIG Docs ao invés de SIG-DOCS ou outras variantes. |
| On-premises | Escreva On-premises ou On-prem ao invés de On-premise ou outras variantes. |
Os shortcodes do Hugo
auxiliam na criação de diferentes níveis de atrativos retóricos. Nossa
documentação suporta três diferentes shortcodes nessa categoria: Nota
{{< note >}}, Cuidado {{< caution >}}, e Aviso
{{< warning >}}.
Circunde o texto com uma abertura e um fechamento de shortcode.
Utilize a sintaxe abaixo para aplicar um estilo:
{{< note >}}
Não há necessidade de incluir um prefixo; o _shortcode_ fornece um automaticamente (Nota:, Cuidado:, etc.).
{{< /note >}}
A saída é semelhante a:
O prefixo é gerado automaticamente com a seleção do tipo da tag.
Utilize {{< note >}} para destacar uma dica ou uma informação que pode ser
útil para o leitor.
Por exemplo:
{{< note >}}
Você _ainda_ pode utilizar Markdown dentro destas seções de destaque.
{{< /note >}}
The output is:
Você pode utilizar o shortcode {{< note >}} em uma lista:
1. Utilize o _shortcode_ `note` em uma lista
1. Um segundo item em uma lista com um shortcode note embutido
{{< note >}}
_Shortcodes_ Aviso, Cuidado e Nota, embutidos em listas, devem ser indentados
com quatro espaços. Veja mais em [Problemas comuns com _shortcodes_](#common-shortcode-issues).
{{< /note >}}
1. Um terceiro item em uma lista
1. Um quarto item em uma lista
A saída é:
Utilize o shortcode note em uma lista
Um segundo item em uma lista com um shortcode note embutido
_Shortcodes_ Aviso, Cuidado e Nota, quando embutidos em listas, devem ser
indentados com quatro espaços. Veja mais em
[Problemas comuns com _shortcodes_](#common-shortcode-issues).
Um terceiro item em uma lista
Um quarto item em uma lista
Utilize {{< caution >}} para chamar a atenção a informações importantes
que podem evitar problemas.
Por exemplo:
{{< caution >}}
O estilo de chamada se aplica somente à linha diretamente acima da tag.
{{< /caution >}}
A saída é:
Utilize {{< warning >}} para indicar perigo ou uma orientação que é crucial
e deve ser seguida.
Por exemplo:
{{< warning >}}
Cuidado.
{{< /warning >}}
A saída é:
Shortcodes interrompem listas numeradas a não ser que estejam indentados com quatro espaços antes da nota e da tag.
Por exemplo:
1. Preaqueça o forno a 350°F.
1. Prepare a massa e a coloque na assadeira.
`{{< note >}}Unte a assadeira para melhores resultados.{{< /note >}}`
1. Asse por 20-25 minutos, ou até que ao testar com um palito este saia limpo.
A saída é:
Preaqueça o forno a 350°F.
Prepare a massa e a coloque na assadeira.
Asse por 20-25 minutos, ou até que ao testar com um palito este saia limpo.
includeShortcodes dentro de cláusulas include fazem com que o build falhe. Você
deve colocá-los no documento superior, antes e depois da cláusula include.
Por exemplo:
{{< note >}}
{{< include "task-tutorial-prereqs.md" >}}
{{< /note >}}
Utilize uma única linha em branco para dividir conteúdo a nível de bloco como por exemplo cabeçalhos, listas, imagens, blocos de código, entre outros. A exceção são cabeçalhos de segundo nível, onde duas linhas em branco devem ser utilizadas. Cabeçalhos de segundo nível seguem o primeiro nível (ou o título) sem nenhum texto ou parágrafo precedente. Um espaçamento de duas linhas em branco auxilia a melhor visualização geral da estrutura do conteúdo em um editor de texto.
Pessoas que acessam esta documentação podem estar fazendo uso de um leitor de tela ou outro tipo de tecnologia auxiliar. Leitores de tela são dispositivos de saída linear que falam de um item por vez em uma página. Se uma grande quantidade de conteúdo existe em uma página, você pode utilizar cabeçalhos para dar à página uma estrutura interna. Uma boa estrutura de página auxilia todos os leitores a navegar facilmente ou filtrar tópicos de interesse.
| Faça | Não faça |
|---|---|
| Atualize o título no front matter da página ou postagem de blog. | Utilize cabeçalho de primeiro nível, pois o Hugo automaticamente converte o título do front matter para um cabeçalho de primeiro nível. |
| Utilize cabeçalhos ordenados para fornecer um resumo de alto nível do seu conteúdo. | Utilize cabeçalhos de nível 4 a 6, a menos que seja absolutamente necessário. Se o seu conteúdo é detalhado a este nível, pode ser que ele precise ser dividido em artigos separados. |
Utilize o sinal numérico ou cerquilha (#) para conteúdo que não seja postagem de blog. |
Utilize traços ou sinais de igual (--- ou ===) para designar cabeçalhos de primeiro nível. |
| Utilize formatação de maiúsculas e minúsculas de sentença para cabeçalhos no corpo da página. Por exemplo, Estenda o kubectl com plugins | Utilize formatação de maiúsculas e minúsculas de título para cabeçalhos no corpo da página. Por exemplo, Estenda o Kubectl com Plugins |
Utilize formatação de maiúsculas e minúsculas de título para o título da página no front matter. Por exemplo, title: Riscos do Contorno do Servidor da API do Kubernetes |
Utilize formatação de maiúsculas e minúsculas de sentença para títulos de página no front matter. Por exemplo, não utilize title: Riscos do contorno do servidor da API do Kubernetes |
| Faça | Não faça |
|---|---|
| Tente manter os parágrafos abaixo de 6 sentenças. | Indente o primeiro parágrafo com caracteres de espaço. Por exemplo, ⋅⋅⋅Três espaços antes de um parágrafo o indenta. |
Utilize três hífens (---) para criar uma régua horizontal. Utilize réguas horizontais para quebras no conteúdo do parágrafo. Por exemplo, uma mudança de cena em uma história, ou uma mudança de tópico dentro de uma seção. |
Utilize réguas horizontais para decoração. |
| Faça | Não faça |
|---|---|
| Crie hiperlinks que forneçam o contexto para o conteúdo para o qual eles apontam. Por exemplo: certas portas estão abertas em suas máquinas. Veja Verifique portas necessárias para mais detalhes. | Utilize termos ambíguos, como "clique aqui". Por exemplo: certas portas estão abertas em suas máquinas. Veja aqui para mais detalhes. |
Crie hiperlinks no estilo de Markdown: [texto do link](URL). Por exemplo: [_Shortcodes_ do Hugo](/docs/contribute/style/hugo-shortcodes/#table-captions), cuja saída é Shortcodes do Hugo. |
Crie links no estilo de HTML: <a href="/media/examples/link-element-example.css" target="_blank">Visite nosso tutorial!</a>, ou crie links que abrem em novas abas ou janelas. Por exemplo: [website de exemplo](https://example.com){target="_blank"} |
Agrupe em listas itens relacionados que devem aparecer em uma ordem específica, ou para indicar uma correlação entre vários itens. Quando um leitor de tela encontra uma lista, independentemente de ser uma lista ordenada ou não-ordenada, o leitor de tela anunciará ao usuário que há um grupo de itens em lista. O usuário pode então utilizar as teclas de seta para navegar para cima e para baixo entre os vários itens da lista. Links para navegação no website também podem ser marcados como itens de lista, pois nada mais são do que um grupo de links relacionados.
Finalize cada item em uma lista com um ponto final se um ou mais itens na lista forem sentenças completas. Para consistência, normalmente todos os itens da lista devem ser sentenças completas, ou nenhum dos itens deve ser.
Listas ordenadas que são parte de uma sentença introdutória incompleta podem
ser mantidos em letras minúsculas e pontuados como se cada item fosse uma
parte da sentença introdutória.
Utilize o número um (1.) para listas ordenadas.
Utilize (+), (*) ou (-) para listas não-ordenadas.
Deixe uma linha em branco após cada lista.
Indente listas aninhadas com quatro espaços (por exemplo, ⋅⋅⋅⋅).
Itens de lista podem consistir de múltiplos parágrafos. Cada parágrafo subsequente em uma lista deve estar indentado em quatro espaços ou um caractere de tabulação.
O propósito semântico de uma tabela de dados é apresentar dados tabulados.
Usuários que não fazem uso de leitores de tela podem inspecionar a tabela de forma
visual rapidamente, mas um leitor de tela irá ler o conteúdo linha a linha.
Uma legenda de tabela é utilizada para criar um título descritivo para uma tabela
de dados. Tecnologias auxiliares utilizam o elemento HTML caption para
identificar o conteúdo da tabela para o usuário dentro da estrutura da página.
Esta seção contém melhores práticas sugeridas para conteúdo claro, conciso e consistente.
| Faça | Não faça |
|---|---|
| Este comando inicializa um proxy. | Este comando irá iniciar um proxy. |
Exceção: utilize o tempo futuro ou pretérito quando necessário para comunicar o significado correto.
| Faça | Não faça |
|---|---|
| Você pode explorar a API utilizando um navegador. | A API pode ser explorada utilizando um navegador. |
| O arquivo YAML especifica o número de réplicas. | O número de réplicas é especificado no arquivo YAML. |
Exceção: utilize a voz passiva se a voz ativa resultar em uma construção estranha.
Utilize linguagem simples e direta. Evite utilizar frases ou expressões desnecessárias, como "por favor".
| Faça | Não faça |
|---|---|
| Para criar um ReplicaSet, ... | A fim de criar um ReplicaSet, ... |
| Veja o arquivo de configuração. | Por favor, veja o arquivo de configuração. |
| Veja os Pods. | Com este próximo comando veremos os Pods. |
| Faça | Não faça |
|---|---|
| Você pode criar um Deployment através ... | Criaremos um Deployment através ... |
| Na saída acima, você pode ver ... | Na saída acima, vimos que ... |
Prefira termos em inglês no lugar de abreviações em Latim.
| Faça | Não faça |
|---|---|
| For example, ... | e.g., ... |
| That is, ... | i.e., ... |
Exceção: utilize "etc." para et cetera.
O uso de "nós" em uma sentença pode ser confuso, pois o leitor pode não saber se é parte do "nós" que você está descrevendo.
| Faça | Não faça |
|---|---|
| A versão 1.4 inclui ... | Na versão 1.4, adicionamos ... |
| O Kubernetes fornece uma nova funcionalidade para ... | Nós fornecemos uma nova funcionalidade para ... |
| Esta página ensina sobre como você pode utilizar Pods. | Nesta página, iremos aprender sobre Pods. |
Alguns leitores falam inglês como segunda língua. Evite jargões e expressões idiomáticas para auxiliar na compreensão.
| Faça | Não faça |
|---|---|
| Internally, ... | Under the hood, ... |
| Create a new cluster. | Turn up a new cluster. |
Evite fazer promessas ou dar dicas sobre o futuro. Se você precisa falar sobre uma funcionalidade em estado alfa, coloque o texto sob um cabeçalho que classifique a informação em estado alfa.
Uma exceção a esta regra é a documentação sobre descontinuações que serão convertidas em remoções em uma versão futura. Um exemplo deste tipo de documentação é o Guia de migração de APIs descontinuadas.
Evite palavras como "atualmente" e "novo". Uma funcionalidade que é nova hoje pode não ser mais considerada nova em alguns meses.
| Faça | Não faça |
|---|---|
| Na versão 1.4, ... | Na versão atual, ... |
| A funcionalidade de Federação fornece ... | A nova funcionalidade de Federação fornece ... |
Evite palavras como "apenas", "simplesmente", "fácil", "facilmente" ou "simples". Estas palavras não agregam valor.
| Faça | Não faça |
|---|---|
| Inclua um comando em ... | Inclua apenas um comando em ... |
| Execute o contêiner ... | Simplesmente execute o contêiner ... |
| Você pode remover ... | Você pode facilmente remover ... |
| Estes passos ... | Estes passos simples ... |
Esta página contém informações sobre o painel de analytics do kubernetes.io.
Este painel foi criado usando o Google Looker Studio e mostra informações coletadas no kubernetes.io usando o Google Analytics 4 desde agosto de 2022.
Por padrão, o painel mostra todas as análises coletadas nos últimos 30 dias. Use o seletor de data para ver dados de um intervalo de datas diferente. Outras opções de filtragem permitem que você visualize dados com base na localização do usuário, no dispositivo usado para acessar o site, na tradução dos documentos usados e muito mais.
Se você identificar algum problema com este painel ou quiser solicitar alguma melhoria, abra um problema no repositório.
Olá!
Esta página contém informações sobre o processo de localização em português (Brasil), desde o processo de contribuição até um dicionário de termos com as respectivas traduções.
[pt-br] Localize <caminho>.
Cole o link da issue no canal #kubernetes-docs-pt do Slack do Kubernetes
para que um dos mantenedores possa fazer a triagem e adicionar os labels corretos.#kubernetes-docs-pt.Para garantir que os links referenciados na página que localizou não estão quebrados, você pode executar um script de checagem de links quebrados.
Dentro do seu fork local do repositório, executar:
scripts/linkchecker.py -f content/pt-br/<caminho-da-pagina>
onde content/pt-br/<caminho-da-pagina> é o caminho da página que está sendo localizada.
Este dicionário de termos contém traduções que foram previamente utilizadas em
páginas localizadas. Caso não se encaixe no contexto por algum motivo, sugerimos
trazer para discussão no canal #kubernetes-docs-pt do Slack antes do Pull Request
ser aberto.
| Inglês | Português | Comentários |
|---|---|---|
| addon | complemento | |
| API call | chamada para a API | |
| API server | servidor de API | |
| backward compatibility | retrocompatibilidade | |
| bare-metal server/baremetal server/baremetal | servidor dedicado | Conforme descrito na Wikipedia em Português: https://pt.wikipedia.org/wiki/Bare-metal_server |
| boostrap | autoinicialização | |
| builtin/built-in | embutido | |
| claim(s) | requisição(ões) | |
| container image | imagem do contêiner | |
| control plane | camada de gerenciamento | |
| dashboard | painel | |
| data plane | camada de dados | |
| data store | sistema de armazenamento de dados | |
| deploy | instalar, implantar | |
| deployment | instalação, implantação | Utilizar o mais adequado de acordo com o contexto. Não traduzir quando for uma referência à API do Kubernetes chamada Deployment. |
| deprecated | descontinuado | |
| deprecation | descontinuidade | |
| edge computing/edge-based workloads | computação de borda | Conforme utilizado em documentação de provedores de nuvem. |
| feature | funcionalidade | |
| job | tarefa | |
| killed | encerrado, finalizado | Utilizar o mais adequado para o contexto. |
| liveness | operacionalidade | |
| liveness probe | verificação de operacionalidade | |
| manifest | manifesto | |
| mutate | mutar | |
| mutating | mutante | |
| node(s) | nó(s) | Não traduzir quando se tratar de referência à API do Kubernetes chamada Node. |
| out-of-band | fluxo de dados independente | Verificar se encaixa no contexto. |
| parent domain | domínio principal | |
| parse | interpretar | |
| principal | perfil | No sentido de autorização e autenticação. Para outros sentidos pode ser necessária uma tradução distinta. |
| provision | provisionar | |
| readiness | prontidão | |
| readiness probe | verificação de prontidão | |
| resource | recurso | |
| rolling update | atualização gradual/atualização constante | Escolher conforme o contexto. |
| root domain | domínio raiz | |
| route reflector | refletor de rota | |
| runtime | agente de execução | |
| scale/scaling | escalonamento | |
| schedule | cronograma, agendamento, alocação | Varia com o contexto. Para termos relacionados à distribuição de Pods entre nós, utilizar alocação. Se tratando de tarefas agendadas, utilizar cronograma ou agendamento de acordo com o contexto. |
| selector | seletor | |
| storage | armazenamento | |
| tradeoff | contrapartida | |
| worker node | nó de processamento/nó de carga de trabalho | Utilizar o termo que fizer mais sentido para o contexto. |
| workload | carga de trabalho | |
| workflow | fluxo de execução |
Via de regra, nomes de APIs do Kubernetes permanecem no original utilizando camel case conforme o nome da API. Alguns exemplos (lista não-exaustiva):
A tabela abaixo contém termos que não foram previamente traduzidos em localizações já concluídas.
| Inglês | Comentários |
|---|---|
| addon manager | Componente do Kubernetes. |
| auto-scaling | |
| bind | |
| CLI | |
| cloud native | |
| cluster | |
| controller manager | Componente do Kubernetes. |
| custom recycler | |
| daemon | |
| DNS | |
| endpoint | Termo comum para indicar um endereço de recurso em APIs. |
| escape hatch | |
| feature gate | Terminologia específica do Kubernetes. |
| framework | |
| hook | |
| label | |
| overlay network | |
| proxy | |
| RBAC | |
| release | |
| service mesh | |
| tag | |
| taint | |
| token | |
| tutorial |
Recomendamos usar o formato [pt-br] Update/Add <caminho do arquivo>.
Sempre dê preferência por abrir um Pull Request por página, dessa forma facilita a revisão e o acompanhamento do trabalho.
Não, pode mandar a dúvida no canal do slack (#kubernetes-docs-pt) que vamos ajudar com a dúvida.
É importante lembrar que as pessoas revisoras são voluntárias, então em alguns casos pode demorar um pouco. O que recomendamos nesses casos é enviar uma mensagem no canal do slack com o link do Pull Request, assim podemos verificar o que pode ter acontecido.
Ficou alguma dúvida que não foi respondida nessa página?
Fale com a gente canal no slack do Kubernetes #kubernetes-docs-pt.