Comece a usar o Cloud Code para VS Code para Kubernetes

O Cloud Code permite-lhe criar uma aplicação Kubernetes com base num exemplo ou num projeto existente.

Crie uma aplicação a partir de um modelo

O código na nuvem inclui uma coleção de modelos de exemplos de código para começar rapidamente. Para criar uma aplicação Kubernetes com um exemplo existente, siga estes passos:

  1. Inicie a paleta de comandos (prima Ctrl/Cmd+Shift+P ou clique em Ver > Paleta de comandos) e, de seguida, execute Cloud Code: New Application.
  2. Selecione Aplicação Kubernetes para o tipo de exemplo.
  3. Selecione um exemplo com base no idioma que quer usar nas opções disponíveis: NodeJS, Go, Python, Java.
  4. Escolha uma localização preferencial da aplicação no seu computador local e, de seguida, clique em Criar nova aplicação para guardar.

    O Cloud Code clona o exemplo que escolheu e abre o seu novo projeto para utilização.

Exemplo de estrutura da aplicação

Todas as aplicações de amostras de idiomas têm praticamente a mesma estrutura. Esta não é a única estrutura suportada, mas é recomendada quando começa.

Por exemplo, a estrutura da aplicação Guestbook do Node.js tem o seguinte aspeto:

.
|---- .vscode
|      ---- launch.json
|---- kubernetes-manifests
|     |---- guestbook-backend.deployment.yaml
|     |---- guestbook-backend.service.yaml
|     |---- guestbook-frontend.deployment.yaml
|     |---- guestbook-frontend.service.yaml
|     |---- mongo.deployment.yaml
|     ---- mongo.service.yaml
|---- src
|     |---- backend
|     |     |---- Dockerfile
|     |     |---- index.js
|     |     |---- app.js
|     |     ---- package.json
|     |---- frontend
|           |---- Dockerfile
|           |---- index.js
|     |     |---- app.js
|           ---- package.json
---- skaffold.yaml

Analisando mais detalhadamente esta app de exemplo Guestbook Node.js do Kubernetes, seguem-se alguns ficheiros importantes e as respetivas utilizações:

  • .vscode
    • extensions.json: pedido de transferência de extensões relacionadas quando abrir este projeto
    • launch.json: configuração de lançamento (do tipo cloudcode.kubernetes) para executar ou depurar a aplicação Kubernetes
    • tasks.json: informações de configuração para tarefas do Visual Studio Code
  • kubernetes-manifests
    • guestbook-backend.deployment.yaml: especificação do agrupamento para os nós de back-end
    • guestbook-frontend.deployment.yaml: especificação do agrupamento para os nós de interface
    • mongo.deployment.yaml: especificação do agrupamento para a base de dados
  • src
    • (backend|frontend)/app.js: código Node.js com a lógica do servidor Web
    • (backend|frontend)/Dockerfile: usado para criar a imagem do contentor para o nosso programa
  • skaffold.yaml: ficheiro de configuração do Skaffold, que o Cloud Code usa para criar, implementar e depurar aplicações Kubernetes

Use a sua própria aplicação

Para ver os passos para usar um projeto existente, consulte o artigo Use o Cloud Code com uma aplicação Kubernetes existente.

Defina o contexto do Kubernetes

Antes de executar a aplicação, certifique-se de que tem tudo configurado para implementar a app no contexto do Kubernetes preferido. Pode especificar esta opção na sua configuração.

Configuração

Quando usa a configuração de execução Cloud Code: Develop on Kubernetes, pode personalizar a sua implementação configurando as definições disponíveis.

Para adicionar ou editar configurações, aceda a Executar > Abrir configurações e, em seguida, edite ou adicione configurações.

Definições de compilação

O Cloud Code suporta tipos de artefactos Docker, Jib e Buildpacks. Consulte o guia de configuração das preferências de compilação de imagens de contentores para saber como definir o seu criador preferido e as respetivas definições relevantes.

Personalize a configuração de lançamento

Para configurar a forma como a sua aplicação é executada, pode personalizar o ficheiro skaffold.yaml.

Também pode configurar o lançamento editando a cloudcode.kubernetesconfiguração no ficheiro .vscode/launch.json.

Para mais informações sobre a personalização da configuração de lançamento, consulte o artigo Kubernetes no Cloud Code.

Execute a sua aplicação

Depois de configurar uma aplicação, pode executá-la num cluster do Kubernetes e vê-la em direto através da skaffold dev. Pode executar a sua aplicação num cluster local (como o minikube ou o Docker Desktop), no Google Kubernetes Engine ou em qualquer outro fornecedor de nuvem.

  1. Abra a paleta de comandos (prima Ctrl/Cmd+Shift+P) e, de seguida, execute o comando Cloud Code: Run on Kubernetes.
  2. Confirme se quer usar o contexto do Kubernetes atual para executar a app (ou mude para um contexto preferencial). Para mais informações sobre como configurar um contexto do Kubernetes, consulte o artigo Configurar.
  3. Se escolheu um cluster remoto como contexto, quando lhe for pedido, escolha um registo de imagens para enviar as imagens. Se o seu projeto tiver a API Artifact Registry ativada e, pelo menos, um repositório do Artifact Registry, pode procurar e selecionar um repositório do Artifact Registry existente.

    Os exemplos seguintes demonstram como especificar onde as imagens de contentores são armazenadas para alguns registos comuns:

    Artifact Registry REGION-docker.pkg.dev/PROJECT_ID/REPO_NAME
    Docker Hub docker.io/ACCOUNT
    Certifique-se de que tem autenticação adequada se estiver a usar um repositório privado do Docker Hub.
    AWS Container Repository (ECR) AWS_ACCOUNT_ID.dkr.ecr.REGION.amazonaws.com/APP
    Azure Container Registry (ACR) ACR_NAME.azurecr.io/APP

    O Cloud Code concatena este registo de imagens com o nome da imagem especificado nos manifestos do Kubernetes para gerar o nome final do repositório de imagens.

    Para mais informações, consulte o guia de processamento do registo de imagens.

    Esta escolha é armazenada na cloudcode.kubernetesconfiguração de lançamento (encontrada em .vscode/launch.json).

    O Cloud Code cria os seus contentores, envia-os para o registo, aplica as configurações do Kubernetes ao cluster e aguarda a implementação.

Ver registos

Além de ver registos de pods em execução como uma stream em direto no resultado do terminal enquanto desenvolve e executa a sua aplicação, pode ver registos de um pod específico navegando para a secção Kubernetes.

Para ver registos de um pod específico, siga estes passos:

  1. Na secção Kubernetes, expanda Implementações
  2. Clique com o botão direito do rato no pod cujos registos quer ver e, de seguida, clique em Ver registos.

    O Visualizador de registos é aberto.

Faça alterações, recrie e limpe

Se tiver definido o modo de observação como false na configuração de lançamento e quiser fazer alterações à sua aplicação e, em seguida, recompilar e voltar a implementar a aplicação:

  1. Faça e guarde as alterações.

  2. Na barra de ferramentas de depuração, clique em Pausar (F6) e, de seguida, clique em Reiniciar (Ctrl/Cmd + Shift + F5) para reconstruir e voltar a implementar a aplicação.

  3. Para parar a execução da aplicação, na barra de ferramentas de depuração, clique em Parar.

Depois de parar a aplicação, todos os recursos do Kubernetes implementados são eliminados do cluster. Pode alterar este comportamento através da flag cleanUp na configuração de lançamento.

Armazene secrets

Se o seu código incluir dados potencialmente confidenciais, como chaves de API, palavras-passe e certificados, recomendamos que os armazene como segredos. Com o Cloud Code, pode armazenar estes segredos em segurança no Secret Manager e obtê-los programaticamente quando precisar deles.

Para ver uma análise detalhada de como pode criar e gerir segredos com o Cloud Code, consulte o guia do Secret Manager.

Veja os detalhes dos recursos

A secção do Kubernetes apresenta clusters, espaços de nomes, nós, cargas de trabalho (como implementações, conjuntos de réplicas, pods e contentores), serviços e entradas, configurações (como segredos e mapas de configuração) e armazenamento (como volumes). Na secção Kubernetes, pode realizar ações únicas em alguns destes recursos.

Consulte a vista geral do Kubernetes para ver mais informações sobre a visualização dos detalhes dos recursos.

O que se segue?

Obter apoio técnico

Para enviar feedback, comunicar problemas no GitHub ou fazer uma pergunta no Stack Overflow.