Como implantar no App Engine

Armazene imagens e dependências de contêiner para seus aplicativos no Artifact Registry para implantação no App Engine.

  • Declarar dependências no Artifact Registry no Node.js e Python aplicativos conteinerizados.
  • implantar o aplicativo diretamente no ambiente padrão do App Engine; conteinerize e implante no ambiente flexível do App Engine com Cloud Build.
  • Armazene imagens de contêiner em repositórios do Docker do Artifact Registry e implante-as no ambiente flexível do App Engine.

Permissões necessárias

Ambiente flexível do App Engine
Se o ambiente flexível do App Engine e o Artifact Registry estiverem no mesmo projeto, a conta de serviço padrão do App Engine terá permissões para extrair contêineres dos repositórios.
.
Se você também usa o Cloud Build para conteinerizar seus aplicativos e armazenar conceda o papel de Gravador do Artifact Registry. à conta de serviço do Cloud Build.
Ambiente padrão do App Engine:
O ambiente padrão do App Engine usa a conta de serviço do Cloud Build para criar e implantar seus aplicativos, incluindo a integração de dependências armazenadas no Artifact Registry.
  • Se o App Engine e o Artifact Registry estiverem no mesmo projeto do Google Cloud, a conta de serviço tem as permissões permissões para download a partir de repositórios.
  • Se o App Engine e o Artifact Registry estiverem em projetos diferentes, você precisa conceder acesso ao repositório para a conta de serviço.
  • Para fornecer acesso somente leitura para download de dependências, conceda o Papel Leitor do Artifact Registry para o serviço do Cloud Build do Compute Engine.
  • Se você também usa o Cloud Build para fazer upload de artefatos para repositórios, conceda a função de escritor do Artifact Registry à conta de serviço do Cloud Build.

Implantar no ambiente flexível do App Engine

É possível implantar uma imagem hospedada pelo Artifact Registry no App Engine usando a Google Cloud CLI.

  1. Crie o arquivo de configuração do App Engine para seu aplicativo.
  2. Crie uma imagem do Docker e envie-a por push para o repositório. Use o Cloud Build para criar e enviar seu contêiner para o repositório.
  3. Para implantar a imagem no App Engine, execute o seguinte comando:

    gcloud app deploy --image-url=LOCATION-docker.pkg.dev/PROJECT-ID/REPOSITORY/IMAGE:TAG
    

    em que:

    • LOCATION é o local regional ou multirregional do repositório.
    • PROJECT é o ID do projeto que contém o repositório. Caso o ID do projeto contenha dois pontos (:), consulte Projetos com escopo de domínio.
    • REPOSITORY é o nome do repositório em que a imagem está armazenada.
    • IMAGE é o nome da imagem no repositório.
    • TAG é a tag da versão da imagem que você quer extrair.

    Exemplo:

    gcloud app deploy --image-url=us-central1-docker.pkg.dev/my-project/my-repo/my-image:1.0
    

Configurar o acesso às dependências

Para aplicativos de ambiente padrão, consulte a documentação do ambiente padrão do App Engine para ver as instruções de configuração do npm e do Python.

Para incluir dependências em builds executados com o Cloud Build, consulte Como integrar com o Cloud Build.