Antes de implantar um serviço no Cloud Run, você pode desenvolvê-lo localmente usando um emulador do Cloud Run.
Como configurar o serviço para desenvolvimento
Se você não tiver um arquivo .vscode/launch.json
definido, a caixa de diálogo
Run/Debug on Cloud Run Emulator vai permitir que você configure a inicialização e
salve as configurações em .vscode/launch.json
. Se você tiver um
.vscode/launch.json
configurado, é possível editá-lo diretamente.
Para executar o serviço localmente, especifique a configuração:
- Abra a paleta de comandos (pressione
Ctrl
/Cmd
+Shift
+P
ou clique em Ver > Paleta de comandos) e, em seguida, execute o comando Executar no emulador do Cloud Run. Na caixa de diálogo "Run/Debug no Cloud Run Emulator", defina as especificações para sua configuração:
- Somente as ferramentas de build instaladas localmente estão disponíveis para o Cloud Run Emulador
- Escolha Docker ou Buildpacks como seu builder e especifique a fonte.
- (Opcional) Para especificar variáveis de ambiente a serem transmitidas para o
contêineres, expanda Configurações avançadas do build e clique para especificar
pares de chave-valor.
Nome Descrição Exemplo PORT A porta para a detecção pelo servidor HTTP. 8080 K_SERVICE O nome do serviço do Cloud Run em execução. hello-world K_REVISION O nome da revisão do Cloud Run em execução. hello-world.1 K_CONFIGURATION O nome da configuração do Cloud Run que criou revisão. hello-world - (Opcional) Para especificar conexões do Cloud SQL, expanda Configurações avançadas do serviço, clique em Conexões e especifique uma Conexão do Cloud SQL por linha.
- (Opcional) Marque a caixa de seleção Tornar o serviço acessível em outros dispositivos na rede local é a melhor opção.
- (Opcional) Se você só quiser recriar e executar seu serviço manualmente, em vez de automaticamente ao fazer uma alteração, limpe Opção Recriar e executar novamente automaticamente quando houver alterações.
Como executar o serviço localmente
Depois de definir as configurações preferenciais, execute o serviço clicando em Run.
Se solicitado, autentique suas credenciais para executar e depurar um seu aplicativo localmente.
Monitore o status da sua implantação na janela de saída.
Após a conclusão da implantação, veja o serviço em execução abrindo o URL exibido na janela de saída.
Para ver registros detalhados, alterne para a visualização detalhada do Cloud Run na janela de saída.
Após a conclusão da sessão, clique com o botão direito do mouse para usar os seguintes comandos:
- Ver registros: abra os registros do aplicativo de uma implantação específica com o Análise de registros do Cloud Code.
- Abrir URL: abre o URL do serviço de aplicativo de um serviço em um navegador da Web.
Se você desativou o modo de exibição em sua configuração de inicialização e deseja fazer alterações no aplicativo, recriar e reimplantá-lo; clique na barra de status do Cloud Code e, em seguida, Ative o modo de exibição.
Para interromper a implantação, clique no botão Parar na barra de ações da implantação atual.
Como armazenar chaves secretas
Se o código inclui dados possivelmente confidenciais, como chaves de API, senhas e certificados, armazená-los como secrets pode ajudar a protegê-los. O A integração com o Secret Manager do Cloud Code permite que você armazenar esses secrets e buscá-los de maneira programática. Para uma visão detalhada de como é possível criar e gerenciar secrets com o Cloud Code, consulte o guia do Secret Manager.
Como personalizar uma configuração launch.json
O plug-in Cloud Code atualiza o arquivo de configuração launch.json
.
automaticamente quando você escolhe uma ação de execução. Para personalizar ainda mais a forma como
serviço é executado, você pode especificar os seguintes campos em seu
Arquivo .vscode/launch.json
:
watch: monitora as alterações no espaço de trabalho e faz uma nova execução. o serviço. "True" por padrão.
O exemplo a seguir mostra o relógio definido como
true
:"watch": true,
build: especificar o builder (Docker, jibMaven, jibGradle ou pacotes de criação) para criar imagens.
O exemplo a seguir mostra um builder do Docker:
"build": { "docker": { "path": "Dockerfile" } },
O exemplo abaixo mostra um builder de buildpack:
"build": { "buildpacks": { "path": "src/requirements.txt", "builder": "gcr.io/buildpacks/builder:v1" } },
image: especifique o nome da imagem a ser usada.
O exemplo a seguir mostra como especificar o nome de uma imagem:
"image": "hello-world",
service: especifique o serviço do Cloud Run a ser usado.
O exemplo a seguir mostra como especificar um nome, uma porta e um recurso de serviço limites:
"service": { "name": "hello-world", "containerPort": 8080, "resources": { "limits": { "memory": "256Mi" } } },
debug: especifica as configurações de depuração, como o mapeamento de caminho remoto, para mapear um caminho local para um caminho no contêiner remoto.
O exemplo a seguir mostra uma seção de depuração que indica o nome local:
"debug": { "sourceFileMap": { "${workspaceFolder}": "/app" } }