Criar um aplicativo Ruby no ambiente flexível do App Engine

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

Neste guia de início rápido, você aprende como implantar um app de exemplo no App Engine.

Custos

Não há custos associados à execução deste guia. A execução desse app de exemplo sozinho não excede sua cota sem custo financeiro.

Neste guia de início rápido, você aprenderá a criar um pequeno app do App Engine que exibe uma mensagem curta.

Antes de começar

  1. Faça login na sua Google Cloud conta do. Se você não conhece o Google Cloud, crie uma conta para avaliar a performance dos nossos produtos em cenários reais. Clientes novos também recebem US $300 em créditos para executar, testar e implantar cargas de trabalho.
  2. 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 role (roles/resourcemanager.projectCreator), which contains the resourcemanager.projects.create permission. Learn how to grant roles.

    Go to project selector

  3. Verify that billing is enabled for your Google Cloud project.

  4. Enable the Cloud Build API.

    Roles required to enable APIs

    To enable APIs, you need the Service Usage Admin IAM role (roles/serviceusage.serviceUsageAdmin), which contains the serviceusage.services.enable permission. Learn how to grant roles.

    Enable the API

  5. Instale a Google Cloud CLI.

  6. Ao usar um provedor de identidade (IdP) externo, primeiro faça login na CLI gcloud com sua identidade federada.

  7. Para inicializar a CLI gcloud, execute o seguinte comando:

    gcloud init
  8. 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 role (roles/resourcemanager.projectCreator), which contains the resourcemanager.projects.create permission. Learn how to grant roles.

    Go to project selector

  9. Verify that billing is enabled for your Google Cloud project.

  10. Enable the Cloud Build API.

    Roles required to enable APIs

    To enable APIs, you need the Service Usage Admin IAM role (roles/serviceusage.serviceUsageAdmin), which contains the serviceusage.services.enable permission. Learn how to grant roles.

    Enable the API

  11. Instale a Google Cloud CLI.

  12. Ao usar um provedor de identidade (IdP) externo, primeiro faça login na CLI gcloud com sua identidade federada.

  13. Para inicializar a CLI gcloud, execute o seguinte comando:

    gcloud init

Funções exigidas

Para conseguir as permissões que você precisa para concluir este guia de início rápido, peça ao administrador para conceder a você os seguintes papéis do IAM:

Para mais informações sobre a concessão de papéis, consulte Gerenciar o acesso a projetos, pastas e organizações.

Também é possível conseguir as permissões necessárias usando personalizados papéis ou outros predefinidos papéis.

Pré-requisitos adicionais

  1. Inicialize seu aplicativo do App Engine com o projeto e escolha a região:

    gcloud app create --project=[YOUR_PROJECT_ID]
    

    Quando solicitado, selecione a região em que você quer localizar o aplicativo do App Engine.

  2. Instale o seguinte na máquina local:

Locais do App Engine

O App Engine é regional. Isso significa que a infraestrutura que executa os aplicativos está em uma determinada região que é gerenciada pelo Google para estar disponível de modo redundante em todas as zonas dessa região.

Atender aos requisitos de latência, disponibilidade ou durabilidade são os principais fatores para selecionar a região de execução dos aplicativos. Em geral, é possível selecionar a região mais próxima dos usuários do app, mas considere os locais em que o App Engine está disponível bem como os locais dos outros Google Cloud produtos e serviços usados pelo app. O uso de serviços em vários locais pode afetar a latência e o preço do aplicativo.

Não é possível alterar a região de um aplicativo depois de defini-la.

Se você já criou um aplicativo do App Engine, será possível ver a região dele com um dos seguintes procedimentos:

Neste guia de início rápido, demonstramos um aplicativo simples em Ruby escrito com o framework da Web Sinatra (em inglês) que pode ser implantado no App Engine. Essa amostra usa o Sinatra, mas é possível usar outros frameworks, como o Ruby on Rails (em inglês).

fazer o download do app Hello World

Criamos um app Hello World para App Engine. Assim, é possível ter uma ideia de como implantar um app no Google Cloud.

  1. Clone o repositório do app de exemplo Hello World na máquina local.

    git clone https://github.com/GoogleCloudPlatform/ruby-docs-samples
    

    Outra opção é fazer o download da amostra (em inglês) como um arquivo ZIP e extraí-lo.

  2. Acesse o diretório que contém o exemplo de código.

    cd ruby-docs-samples/appengine/standard-hello_world
    

Execute o Hello World na máquina local

Neste exemplo, o Bundler (em inglês) é usado para executar o aplicativo Hello World no seu computador local:

  1. Se você ainda não tiver a linguagem de programação instalada para seu ambiente de execução, faça o download e instale o Ruby.

    Fazer o download e instalar o Ruby

  2. Instale o Bundler (em inglês).

    gem install bundler
    
  3. Instale as dependências desse projeto:

    bundle install
    
  4. Inicie um servidor da Web local.

    bundle exec ruby app.rb -p 8080
    
  5. Em seu navegador da Web, digite:

    http://localhost:8080

A mensagem Hello World do aplicativo de amostra é exibida na página. Na janela do terminal, pressione Ctrl+C para sair do servidor da Web.

Implantar e executar o Hello World no App Engine

Para implantar o aplicativo no ambiente padrão do App Engine, siga estas etapas:

  1. Implemente o aplicativo Hello World executando o comando a seguir no diretório standard-hello_world:

    gcloud app deploy

    Saiba mais sobre sinalizações opcionais.

    Sinalizações comuns do comando gcloud

    • Inclua a sinalização --version para especificar um ID exclusivo que identifica a versão do seu aplicativo. Quando a sinalização não é incluída, o ID é gerado automaticamente. Exemplo: --version [YOUR_VERSION_ID]
    • Inclua a sinalização --project para especificar um ID do projeto alternativo ao que você inicializou como padrão na ferramenta gcloud. Google Cloud Exemplo: --project [YOUR_PROJECT_ID]

    Exemplo:

    gcloud app deploy --version pre-prod-5 --project my-sample-app

    Para aprender a implantar o app pela linha de comando, consulte Como testar e implantar o app. Para uma lista de todas as sinalizações de comando, consulte a referência do gcloud app deploy.

  2. Inicie o navegador para visualizar o aplicativo em https://PROJECT_ID.REGION_ID.r.appspot.com

    gcloud app browse
    em que PROJECT_ID representa o Google Cloud ID do projeto.

Nesse momento, a página que exibe a mensagem “Hello World” é enviada por um servidor da Web em execução em uma instância do App Engine.

Parabéns! Você implantou seu primeiro aplicativo do App Engine no ambiente padrão do App Engine!

Veja as seções a seguir para informações sobre limpeza e links das próximas etapas.

Limpar

Exclua o projeto do Google Cloud para não ser cobrado pelos recursos usados nele.

  1. No Google Cloud console, acesse a página Gerenciar recursos.

    Acessar "Gerenciar recursos"

  2. Na lista de projetos, selecione o projeto que você quer excluir e clique em Excluir.
  3. Na caixa de diálogo, digite o ID do projeto e clique em Desligar para excluir o projeto.

A seguir

Conheça a plataforma inteira

Agora que você já sabe como desenvolver e implantar apps do App Engine, pode explorar o restante do Google Cloud. Você já tem a Google Cloud CLI instalada, o que oferece as ferramentas para interagir com produtos como Cloud SQL, Cloud Storage, Firestore e muitos outros.

Saiba mais sobre o ambiente padrão do App Engine

Listamos alguns tópicos para você continuar aprendendo sobre o App Engine: