Conectar a partir do Cloud Run
Nesta página, mostramos como implantar um aplicativo de amostra em um serviço do Cloud Run usando o console do Google Cloud e um aplicativo cliente. Este aplicativo de exemplo conecta o Cloud Run ao AlloyDB para PostgreSQL.
Antes de começar
- Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator
(
roles/resourcemanager.projectCreator), which contains theresourcemanager.projects.createpermission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator
(
roles/resourcemanager.projectCreator), which contains theresourcemanager.projects.createpermission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
-
Ative as APIs do Cloud necessárias para executar um aplicativo de exemplo do AlloyDB para PostgreSQL no Cloud Run.
Na etapa Confirmar projeto, clique em Próxima para confirmar o nome do projeto em que você vai fazer mudanças.
Na etapa Ativar APIs, clique em Ativar para ativar o seguinte:
- API AlloyDB
- API Cloud Run Admin
- API Compute Engine
- API Cloud Build
- API Container Registry
- API Service Networking
- API Cloud Resource Manager
No Google Cloud console, acesse a página Clusters.
Clique em Criar cluster.
O console do Google Cloud apresenta uma opção de tipos de cluster. Selecione Alta disponibilidade.
Clique em Continuar.
A seção Configurar seu cluster é aberta.
Em Informações básicas, no campo ID do cluster, insira
my-cluster.No campo Senha, digite a senha que quiser. Anote essa senha. Você vai usá-lo novamente mais tarde neste guia de início rápido.
No campo Região, selecione
us-central1 (Iowa).Em Conectividade, no menu suspenso Rede, selecione
default.Se você ainda não tiver configurado o acesso a serviços particulares, uma caixa de diálogo com o rótulo Conexão de acesso a serviços particulares necessária vai aparecer.
Na caixa de diálogo Conexão de acesso a serviços privados necessária, para criar uma conexão de acesso a serviços privados, faça o seguinte:
Clique em Configurar conexão.
Um novo painel chamado Ativar a API Service Networking vai aparecer.
No painel, selecione Usar um intervalo de IP alocado automaticamente.
Clique em Continuar.
Clique em Criar conexão e aguarde a conclusão da configuração.
O painel é removido.
Clique em Continuar.
A seção Configurar a instância principal é aberta.
Em Informações básicas, no campo ID da instância, insira
my-primary.Para um valor de Máquina, selecione
2 vCPU, 16 GB.Clique em Criar cluster.
Aguarde a criação do cluster.
Se você não estiver na página Visão geral do cluster recém-criado, acesse a página Clusters no Google Cloud console.
Para mostrar a página Visão geral do cluster, clique no nome do cluster
my-cluster.No menu de navegação, clique em AlloyDB Studio.
Na lista Banco de dados da página Fazer login no AlloyDB Studio, selecione
postgres.Na lista suspensa Usuário, selecione
postgres.No campo Senha, insira a senha que você criou em Criar um cluster e a instância principal dele.
Clique em Autenticar. O painel Explorer mostra uma lista dos objetos no seu banco de dados.
Na guia Editor 1, crie um banco de dados:
CREATE DATABASE quickstart_db;Clique em Executar. Aguarde a mensagem
Statement executed successfullyaparecer no painel Resultados.Acesse a página Painel no console Google Cloud .
Encontre o ID do projeto no card Informações do projeto.
Anote o ID do projeto. Você vai precisar dele na próxima etapa deste guia de início rápido.
No console do Google Cloud , abra o Cloud Shell.
No editor do Cloud Shell, use o comando a seguir para clonar o repositório com o código do aplicativo de amostra do GitHub:
cloudshell_open --repo_url \ "https://github.com/GoogleCloudPlatform/alloydb-auth-proxy" \ --dir \ "examples/go" \ --force_new_cloneCrie um repositório no Artifact Registry para imagens do Docker:
gcloud artifacts repositories create cloud-run-source-deploy --location us-central1 --repository-format=docker --project PROJECT_IDSubstitua
PROJECT_IDpelo ID do seu projeto.Na caixa de diálogo Autorizar o Cloud Shell, clique em Autorizar. Essa solicitação não aparece se você já tiver feito essa etapa.
Para criar um contêiner do Docker e publicá-lo no Artifact Registry, use o seguinte comando:
gcloud builds submit --tag us-central1-docker.pkg.dev/PROJECT_ID/cloud-run-source-deploy/run-sql --project PROJECT_IDSubstitua
PROJECT_IDpelo ID do seu projeto.No Google Cloud console, acesse a página Clusters.
Encontre a linha na tabela em que o Nome do recurso é
my-primary.Anote o endereço IP privado dessa linha. Você vai precisar dele na próxima etapa deste guia de início rápido.
O formato de exemplo do endereço IP é
172.19.209.2:5432.No console Google Cloud , acesse a página do Cloud Run.
Na guia Serviços, clique em Implantar contêiner.
Na página Criar serviço, selecione a opção Implantar uma revisão de uma imagem de contêiner atual.
No campo URL da imagem do contêiner, clique em Selecionar.
No painel Selecionar imagem do contêiner, execute estas etapas:
- Selecione a guia Artifact Registry.
- Abra
us-central1-docker.pkg.dev/PROJECT_ID/cloud-run-source-deploy. - Abra
run-sql. - Selecione a imagem mais recente.
- Clique em Selecionar.
No campo Nome da conta de serviço, insira
quickstart-service.Verifique se
us-central1 (Iowa)está selecionado por padrão na lista Região.Na seção Autenticação, selecione Permitir acesso público.
Verifique se a opção A CPU é alocada somente durante o processamento da solicitação está selecionada na seção Alocação de CPU e preços.
Abra a seção Contêineres, volumes, rede, segurança.
Na guia Contêineres, selecione a guia Variáveis e secrets e siga estas etapas:
Na seção Variáveis de ambiente, clique em Adicionar variável.
Insira o seguinte nos campos
NameeValue:DB_NAME:quickstart_dbDB_USER:postgresDB_PASS: a senha inserida ao criar o cluster em Criar um cluster e a instância principal dele.DB_PORT:5432INSTANCE_HOST: o endereço IP da instância principal do cluster, que você encontrou em Encontrar o endereço IP da nova instância. Não inclua o número da porta. Por exemplo, defina como172.19.209.2, e não172.19.209.2:5432.
Mude da guia Contêineres para a guia Rede e conclua as etapas a seguir:
Marque a caixa de seleção Conectar a uma VPC para tráfego de saída.
Selecione a opção Enviar tráfego diretamente para uma VPC.
Na lista suspensa Rede, escolha o valor
default.Na lista suspensa Sub-rede, verifique se o valor
defaultestá selecionado.
Clique em Criar para criar o serviço do Cloud Run.
Depois que o serviço do Cloud Run for implantado, a página quickstart-service vai mostrar o URL do aplicativo de amostra no campo URL.
O aplicativo usa o AlloyDB como armazenamento de dados.
No console Google Cloud , acesse a página do Cloud Run.
Na página quickstart-service, clique em content_copy Copiar para a área de transferência para copiar o URL do aplicativo.
Em uma nova guia do navegador, cole o URL do aplicativo copiado e clique em Enter.
O exemplo de aplicativo da Web para coleta de votos que aparece é semelhante a este:

No Google Cloud console, acesse a página Clusters.
Ao lado do cluster
my-clusterque você quer excluir, clique em more_vert Ações e depois em delete Excluir.Na caixa de diálogo Excluir cluster, digite
my-clusterno campo my-cluster para confirmar a exclusão.Clique em Excluir.
No console Google Cloud , acesse a página do Cloud Run.
Marque a caixa de seleção ao lado do nome do serviço do
quickstart-service.Clique em delete Excluir na parte de cima da página Cloud Run.
Na caixa de diálogo Excluir quickstart-service que aparece, clique em Excluir para confirmar.
Criar um cluster e a instância principal dele
Conectar-se à instância e criar um banco de dados
Encontrar seu código de projeto
Preencher o Artifact Registry com uma imagem do aplicativo de amostra
Entender o exemplo de código
O código do aplicativo de amostra para este guia de início rápido está localizado no diretório examples/go do repositório GoogleCloudPlatform/alloydb-auth-proxy do GitHub. O comando cloudshell_open na etapa anterior clona automaticamente esse repositório e abre o diretório correto para você.
Como o código funciona
O aplicativo é escrito na linguagem de programação Go e serve como uma ferramenta para coletar votos. A lógica principal está no arquivo main.go, que inicia um servidor da Web e processa solicitações do usuário.
A conexão com o banco de dados é configurada usando variáveis de ambiente, que são definidas ao criar o serviço do Cloud Run. Essas variáveis informam ao aplicativo como se conectar à sua instância do AlloyDB, incluindo o nome do banco de dados, o usuário, a senha e o endereço IP da instância. O código usa essas variáveis para estabelecer uma conexão segura com o banco de dados do AlloyDB.
Por que o código está neste repositório?
O repositório alloydb-auth-proxy contém o proxy de autenticação do AlloyDB, uma ferramenta que ajuda você a se conectar com segurança às instâncias do AlloyDB. O repositório também inclui bibliotecas e exemplos relacionados, como o aplicativo Go usado neste guia de início rápido.
Não é necessário ter todo o projeto alloydb-auth-proxy para se conectar ao AlloyDB pelo Cloud Run. O comando cloudshell_open clona todo o repositório para sua conveniência, mas os únicos arquivos usados para criar o contêiner deste guia de início rápido estão localizados no diretório examples/go.
Encontrar o endereço IP da nova instância
Criar um serviço para o Cloud Run
Ver o aplicativo de exemplo
Limpar
Para evitar cobranças na conta do Google Cloud pelos recursos usados nesta página, siga as etapas abaixo.