Usar o minikube para desenvolvimento local no Cloud Code para VS Code

O Cloud Code instala e gerencia automaticamente o minikube. Se você tiver desativado o gerenciamento de dependências, adicione o binário do minikube ao PATH.

Antes de começar

  1. Instale o Git para que o Cloud Code possa realizar operações do Git, como clonar uma amostra.
  2. Instale o plug-in do Cloud Code se ainda não tiver feito isso.

Criar um aplicativo com base em um modelo

O Cloud Code vem com uma coleção de modelos de exemplo de código para você começar rapidamente. Para criar um aplicativo do Kubernetes usando uma amostra atual, siga estas etapas:

  1. Abra a paleta de comandos (pressione Ctrl/Cmd+Shift+P ou clique em Visualizar > Paleta de comandos) e execute Cloud Code: New Application.
  2. Selecione Aplicativo do Kubernetes como o tipo de amostra.
  3. Selecione um exemplo com base na linguagem que você quer usar entre as opções disponíveis: Node.js, Go, Python e Java.
  4. Escolha um local de aplicativo de sua preferência na máquina local e clique em Criar novo aplicativo para salvar.

    O Cloud Code clona a amostra que você escolheu e abre seu novo projeto para uso.

Exemplo de estrutura de aplicativos

Os aplicativos criados a partir de modelos em todas as linguagens têm quase a mesma estrutura. Essa não é a única estrutura compatível, mas é a opção recomendada ao dar os primeiros passos.

Por exemplo, a estrutura do aplicativo Guestbook Node.js tem esta aparência:

.
|---- .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

Para analisar mais detalhadamente este aplicativo de amostra de livro de visitas do Node.js para o Kubernetes, veja alguns arquivos importantes e seus respectivos usos:

  • .vscode
    • extensions.json: solicitação de download de extensões relacionadas ao abrir este projeto
    • launch.json: iniciar configuração (do tipo cloudcode.kubernetes) para executar ou depurar o aplicativo do Kubernetes
    • tasks.json: informações de configuração para tarefas do Visual Studio Code
  • kubernetes-manifests
    • guestbook-backend.deployment.yaml: especificação do pod para os nós de back-end
    • guestbook-frontend.deployment.yaml: especificação do pod para os nós de front-end
    • mongo.deployment.yaml: especificação do pod para o banco de dados
  • src
    • (backend|frontend)/app.js: código do Node.js com a lógica do servidor da Web
    • (backend|frontend)/Dockerfile: usado para criar a imagem do contêiner do nosso programa
  • skaffold.yaml: um arquivo de configuração, que o Cloud Code usa para criar, implantar e depurar aplicativos do Kubernetes

Usar seu próprio aplicativo

Para ver as etapas de uso de um projeto atual, consulte usar o Cloud Code com um aplicativo do Kubernetes.

Definir o contexto do Kubernetes

Antes de executar o aplicativo, verifique se você está configurado para implantar o aplicativo no contexto de sua preferência. É possível especificar isso na configuração.

Configuração

Ao usar a configuração de execução Cloud Code: desenvolver no Kubernetes, é possível personalizar a implantação definindo as configurações disponíveis.

Para adicionar ou editar configurações, acesse Executar > Abrir configurações e edite ou adicione configurações.

Criar e implantar em um cluster do minikube

Iniciar um cluster do Minikube

O Cloud Code instala e gerencia automaticamente o minikube. Se você tiver desativado o gerenciamento de dependências, adicione o binário do minikube ao PATH.

  1. Inicie a paleta de comandos (pressione Ctrl/Cmd+Shift+P ou clique em Visualizar > Paleta de comandos) e execute o comando Cloud Code: Control minikube.
  2. Clique em minikube para Escolher um cluster (perfil) do Minikube para controlar e clique em Iniciar.

Executar no minikube

  1. Inicie a paleta de comandos e execute Cloud Code: Run on Kubernetes.
  2. Clique em Sim para Usar o contexto atual (minikube) para executar o app?
  3. O Cloud Code executa seu app em um cluster do minikube. Se for preciso, autorize o Cloud Shell a usar suas credenciais para fazer uma chamada de APIGoogle Cloud .

    Confira os detalhes da implantação na seção Sessões de desenvolvimento do Cloud Code.

  4. Clique em URLs de encaminhamento de porta na seção Sessões de desenvolvimento para ver os URLs e clique no link do URL para abrir o navegador com o aplicativo em execução.

Abrir um terminal interativo em um contêiner

  1. Clique em Cloud Code e expanda o explorador Sessões de desenvolvimento.
  2. Expanda Recursos implantados e depois Pods.
  3. Clique com o botão direito do mouse em um contêiner e selecione Obter terminal.

Pausar ou interromper um cluster do minikube

  1. Abra a paleta de comandos (pressione Ctrl/Cmd+Shift+P ou clique em Visualizar > Paleta de comandos) e execute o comando Cloud Code: Control minikube.
  2. Depois que a opção Escolher um cluster (perfil) do Minikube para controlar for preenchida, clique em minikube e em Parar ou Pausar.

Criar e adicionar um cluster de outro provedor de nuvem

Se você estiver usando um cluster local ou de outro provedor, como o Azure ou a AWS, use as ferramentas do provedor para criar o cluster e adicioná-lo ao KubeConfig.

Trabalhar com outros clusters locais

Além do minikube, você pode trabalhar com o Cloud Code se estiver usando o Docker Desktop (para Mac ou Windows).

Para que o Cloud Code funcione com um cluster local, verifique se a configuração padrão (por exemplo, ~/.kube/config) contém o cluster local. Esse cluster precisa ser definido como o contexto atual.

Por exemplo, se você estava usando um cluster local, docker-for-desktop, com o Docker Desktop, defina o cluster de sua preferência com o seguinte comando:

kubectl config use-context docker-for-desktop

A seguir

Receber suporte

Acesse o GitHub para enviar feedback e informar problemas ou o Stack Overflow (ambos em inglês) para fazer perguntas.