Este tutorial destina-se a quem está começando a criar apps na nuvem, como engenheiros e desenvolvedores da Web que querem aprender os conceitos-chave de desenvolvimento de apps no que se referem ao Google Cloud.
Objetivos
- Conhecer ferramentas básicas do Google Cloud, como o Console do Google Cloud e o
gcloud
. - Implantar seu app no Cloud Run.
- Manter seus dados no Firestore.
- Armazenar uploads de arquivos no Cloud Storage.
- Monitore seu aplicativo usando o pacote de operações do Google Cloud.
Custos
Neste documento, você usará os seguintes componentes faturáveis do Google Cloud:
As instruções deste documento foram criadas para manter o uso de seus recursos dentro
dos limites do nível Sempre gratuito do Google Cloud.
Para gerar uma estimativa de custo baseada na projeção de uso deste tutorial, use a calculadora de preços.
Ao concluir as tarefas descritas neste documento, é possível evitar o faturamento contínuo excluindo os recursos criados. Saiba mais em Limpeza.
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.
-
Make sure 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.
-
Make sure that billing is enabled for your Google Cloud project.
-
Para criar um banco de dados do Firestore no modo nativo, conclua as seguintes etapas:
-
No console do Google Cloud, acesse a página Visualizador do Firestore.
Acessar o visualizador do Firestore - Na tela Selecione um modo do Cloud Firestore, clique em Selecionar Modo nativo.
- Selecione um local para seu banco de dados do Firestore. Essa configuração refere-se ao local padrão de recurso do Google Cloud para seu projeto do Google Cloud. Esse local é usado para serviços do Google Cloud no projeto do Google Cloud que exigem uma configuração de local, especificamente o bucket padrão do Cloud Storage e o app Cloud Run.
- Clique em Criar banco de dados.
-
No console do Google Cloud, acesse a página Visualizador do Firestore.
-
Enable the Cloud Run Admin, Cloud Storage, Cloud Logging, and Error Reporting APIs.
-
Clone o repositório de amostra e abra o aplicativo de amostra no Cloud Shell:
Acessar o Cloud ShellO Cloud Shell oferece acesso de linha de comando aos seus recursos do Google Cloud diretamente no navegador.
- Para fazer o download do código de exemplo e passar para o diretório do app, clique em Continuar.
-
No Cloud Shell, configure a ferramenta
gcloud
para usar seu novo projeto do Google Cloud:# Configure gcloud for your project gcloud config set project PROJECT_ID
Substitua PROJECT_ID pelo ID do projeto do Google Cloud que você criou usando o console do Google Cloud.
A Google Cloud CLI é a principal maneira de interagir com seus recursos do Google Cloud pela linha de comando. Neste tutorial, você usará a ferramenta
gcloud
para implantar e monitorar seu app.
Executar o app
-
Instale as dependências do aplicativo usando
composer
:composer install
-
Execute o servidor da Web integrado ao PHP:
GOOGLE_CLOUD_PROJECT=PROJECT_ID php -S localhost:8080
Substitua PROJECT_ID pelo ID do projeto do Google Cloud que você criou. - No Cloud Shell, clique em Visualização da Web e selecione Visualizar na porta 8080. Uma nova janela será aberta com o app em execução.
Como implantar o app no Cloud Run
O Google Cloud oferece várias opções de execução do código. Neste exemplo, você implanta seu app escalonável no Cloud Run. O Cloud Run não exige que você gerencie servidores e é escalonado automaticamente para suportar picos de tráfego.
- Implantar o contêiner no Cloud Run:
gcloud run deploy bookshelf --region us-central1 --allow-unauthenticated \ --set-env-vars="GOOGLE_CLOUD_PROJECT=
PROJECT_ID
" --source .Seu app agora está visível no URL exibido na saída de
gcloud run
:Service [bookshelf] revision [bookshelf-00001] has been deployed and is serving 100 percent of traffic. Service URL: https://bookshelf-swsmmh5s5a-uc.a.run.app
- Copie o URL no seu navegador da Web para visualizar o aplicativo.
Para mais informações sobre como implantar no Cloud Run, consulte a documentação do Cloud Run.
Manter seus dados com o Firestore
Não é possível armazenar informações nas suas instâncias do Cloud Run porque elas serão perdidas se a instância for reiniciada e deixarão de existir quando novas instâncias forem criadas. No entanto, é possível usar um banco de dados no qual todas as suas instâncias possam ler e gravar dados.
O Google Cloud oferece várias opções para armazenar seus dados. Neste exemplo, você usa o Firestore para armazenar os dados de cada livro. O Firestore é um banco de dados de documentos NoSQL totalmente gerenciado e sem servidor, que permite armazenar e consultar dados. Ele é escalonado automaticamente para atender às necessidades do app, sendo reduzido a zero quando não estiver sendo usado. Adicione seu primeiro livro agora.
-
Para criar um livro para seu aplicativo implantado, clique em Adicionar livro.
- No campo Título, insira
Moby Dick
. - No campo Autor, insira
Herman Melville
. -
Clique em Salvar. Agora há uma entrada em seu app Bookshelf.
- No console do Google Cloud, para atualizar a página do Firestore, clique em Atualizar refresh. Os dados são exibidos no Firestore. O app Bookshelf armazena cada livro como um documento do Firestore com um ID exclusivo. Todos esses documentos são armazenados em uma coleção do Cloud Firestore. Para os fins deste tutorial, a coleção é chamada de books.
O Firestore armazena os livros usando a biblioteca de cliente do Firestore (em inglês). Veja a seguir um exemplo de como buscar um documento do Firestore:
Para mais informações sobre como usar o Firestore, consulte Como adicionar dados ao Firestore.
Armazenar uploads de arquivos no Cloud Storage
Agora que você adicionou um livro, é hora de adicionar a imagem da capa. Não é possível armazenar arquivos em suas instâncias. Um banco de dados não é a opção correta para arquivos de imagem. Em vez disso, use o Cloud Storage.
O Cloud Storage é o principal repositório de blobs do Google Cloud. Use o Cloud Storage para hospedar recursos de app que você quer compartilhar em todo o Google Cloud. Para usar o Cloud Storage, você precisa criar um bucket do Cloud Storage, um contêiner básico para guardar seus dados.
- No Console do Cloud, acesse a página Navegador do Cloud Storage.
- Clique em Criar bucket.
- Na caixa de diálogo Criar bucket, insira um nome para ele, anexando o
ID do projeto do Google Cloud à string
_bucket
, de modo que o nome fique assim:YOUR_PROJECT_ID_bucket
. Este nome está sujeito aos requisitos de nome de bucket. Todos os demais campos permanecem nos valores padrão. - Clique em Criar.
- Após a criação do bucket, libere o acesso público aos objetos para que os usuários consigam vê-los. Para saber como fazer isso, consulte Como tornar os dados públicos.
-
Clique em Editar livroe selecione uma
imagem para carregar como a capa. Por exemplo, é possível usar este arquivo de domínio público:
-
Clique em Salvar. Você será redirecionado para a
página inicial onde há uma entrada do seu app Bookshelf.
O app Bookshelf envia os arquivos carregados para o Cloud Storage usando a biblioteca de cliente do Cloud Storage (em inglês).
Para mais informações sobre o uso do Cloud Storage, consulte Introdução ao Cloud Storage.
Monitore seu app usando o pacote de operações do Google Cloud
Você implantou seu app, depois criou e modificou livros. Para monitorar esses eventos para seus usuários, use o Gerenciamento do desempenho de aplicativos.
Monitore registros com o Cloud Logging
-
No Google Cloud, acesse a Análise de registros.
Acessar o Explorador de registrosÉ possível monitorar seu app em tempo real. Se encontrar problemas em seu app, este é o primeiro lugar a ser verificado.
- Na lista suspensa Recurso, selecione Revisão do Cloud Run, bookshelf.
Monitore erros com o Error Reporting
-
No console do Google Cloud, acesse a página Error Reporting.
Acessar a página Error Reporting
O Error Reporting destaca os erros e as exceções em seu app, além de permitir que você configure alertas para eles. -
No navegador, acesse o URL
/errors
em seu app.
YOUR_CLOUD_RUN_URL/errors
Isso gera uma nova exceção de teste e a envia ao pacote de operações do Google Cloud.
-
No console do Google Cloud, retorne à página Error Reporting e, em alguns instantes, o novo erro estará visível. Clique em Recarregar automaticamente para não precisar atualizar manualmente a página.
Limpar
Para evitar cobranças na sua conta do Google Cloud pelos recursos usados no tutorial, exclua o projeto que os contém ou mantenha o projeto e exclua os recursos individuais.
Exclua o projeto
- In the Google Cloud console, go to the Manage resources page.
- In the project list, select the project that you want to delete, and then click Delete.
- In the dialog, type the project ID, and then click Shut down to delete the project.