ID de região
O REGION_ID
é um código abreviado que o Google atribui
com base na região que você selecionou ao criar o aplicativo. O código não
corresponde a um país ou estado, ainda que alguns IDs de região sejam semelhantes
aos códigos de país e estado geralmente usados. Para apps criados após
fevereiro de 2020, o REGION_ID.r
está incluído nos
URLs do App Engine. Para apps existentes criados antes dessa data, o
ID da região é opcional no URL.
Saiba mais sobre IDs de região.
Com este guia, você começa a usar o App Engine e se familiarizar com o desenvolvimento, a implantação e o gerenciamento de um aplicativo Go.
Custos
Não há custos associados à execução deste guia. A execução do aplicativo de exemplo não excede sua cota gratuita.
Como configurar o ambiente de desenvolvimento
Use sua máquina local e as ferramentas com que já está familiarizado ou o Cloud Shell. O Cloud Shell já tem a Google Cloud CLI instalada, o ambiente já configurado e muitos outros recursos.
Máquina local
Instale o Go e configure a CLI gcloud.
Cloud Shell
Inicie o Cloud Shell, que tem todas as ferramentas necessárias pré-instaladas:
Como criar um projeto do Google Cloud
É necessário ter um projeto para usar o Google Cloud. Ele é a base de uso de todos os serviços do Google Cloud.
- 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.
-
Verifique se a cobrança está ativada para o seu projeto do Google Cloud.
-
Enable the Cloud Build API.
- Install the Google Cloud CLI.
-
To initialize the gcloud CLI, run the following command:
gcloud init
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Verifique se a cobrança está ativada para o seu projeto do Google Cloud.
-
Enable the Cloud Build API.
- Install the Google Cloud CLI.
-
To initialize the gcloud CLI, run the following command:
gcloud init
- Crie seu aplicativo do App Engine e os recursos associados a ele. Escolha um local, que não poderá ser alterado depois.
gcloud app create
Como criar um serviço da Web básico para o App Engine
Saiba como criar um serviço da Web e declarar as configurações do ambiente de execução.
Como estruturar seus arquivos
Seu serviço terá a seguinte estrutura de arquivos:
go-app/
: diretório do serviço Go 1.11.app.yaml
: as configurações do seu serviço.main.go
: o código do aplicativo
Como criar o arquivo app.yaml
Cada projeto do App Engine tem um arquivo de configuração app.yaml
que especifica as configurações do ambiente de execução do serviço. Sem esse arquivo, não é possível implantar o serviço.
Crie uma nova pasta chamada
go-app
para seu serviço Go 1.11:mkdir go-app
Na pasta
go-app/
, crie um arquivo chamadoapp.yaml
e adicione o conteúdo a seguir:Essa é a configuração mais simples para um aplicativo do App Engine. Ele indica ao App Engine que você está usando o ambiente de execução do Go 1.11. O arquivo
app.yaml
também pode especificar configurações de rede, configurações de dimensionamento e muito mais. Para mais informações, consulte a referência deapp.yaml
.
Como criar o arquivo main.go
Este exemplo usa o pacote net/http
para criar um servidor HTTP que imprima "Hello world".
Para configurar seu arquivo main.go
, faça o seguinte:
Na pasta
go-app/
, crie um arquivomain.go
.Adicione a instrução
package main
para tratar seu código como um programa executável:package main
Para implantar um serviço no tempo de execução do Go 1.11, uma instrução
package main
deve ser definida no início de pelo menos um dos arquivos de origem do Go no mesmo diretório do arquivoapp.yaml
do serviço.Importe os pacotes a seguir:
Defina seu gerenciador HTTP:
O objeto
http.ResponseWriter
monta a resposta do servidor HTTP. Ao gravar nele, você envia dados para o navegador. O objetohttp.Request
é uma estrutura de dados que representa a solicitação HTTP de entrada.Registre seu gerenciador HTTP:
A função
main
é o ponto de entrada do programa executável. Portanto, ela inicia o aplicativo. Ela começa com uma chamada para a funçãohttp.HandleFunc
que orienta o pacotehttp
a gerenciar todas as solicitações para a raiz da Web ("/"
) com a funçãoindexHandler
.Se a variável de ambiente
PORT
não estiver definida, a porta8080
será usada como padrão. Quando o aplicativo estiver em execução no App Engine, a variável de ambientePORT
será definida para você. Porém, ao testar seu aplicativo localmente, será possível definirPORT
com qualquer valor de sua preferência.
Como implantar o serviço da Web no App Engine
No diretório
go-app
, onde o arquivoapp.yaml
está localizado, implante o serviço da Web no App Engine usando o seguinte comando:gcloud app deploy
Para iniciar o navegador e visualizar o serviço da Web em
https://PROJECT_ID.REGION_ID.r.appspot.com
, execute o seguinte comando:gcloud app browse
Parabéns! Você acabou de criar e implantar um serviço no App Engine.
Serviços e versões
O primeiro serviço que você implantar para o aplicativo será o serviço padrão.
É possível especificar o nome do serviço no arquivo app.yaml
, mas se ele for omitido, será tratado como default
. Também é possível implantar vários serviços além do serviço padrão.
Atualize o serviço a qualquer momento executando o comando gcloud app deploy
. A cada implantação, uma nova versão é criada, e o tráfego é roteado automaticamente para a versão mais recente.
Para confirmar a criação do serviço e a implantação da versão:
Veja os serviços do App Engine no console do Google Cloud:
Você verá um serviço listado, chamado
default
. Ele é acessível publicamente no seguinte URL:https://PROJECT_ID.REGION_ID.r.appspot.com
Veja as versões:
Você verá uma versão com carimbo de data/hora, correspondente à implantação.
Para saber como enviar solicitações para serviços e versões específicos, consulte Como as solicitações são encaminhadas.
Próximas etapas
Parabéns! Você acabou de configurar e implantar o aplicativo da Web no App Engine.
Saiba como adicionar outros recursos ao aplicativo explorando as seguintes páginas:
- Saiba mais como gravar registros de aplicativos e interpretar registros do sistema em Como ler e gravar registros de aplicativos.
- Para saber mais sobre como o App Engine funciona, consulte Ambiente de execução do Go.
- Leia sobre como processar e como rotear solicitações.