Como implantar no ambiente flexível do App Engine

É possível usar o ambiente flexível do App Engine para personalizar um tempo de execução existente, como Java 8, ou fornecer o próprio tempo de execução, cedendo uma imagem personalizada do Docker ou Dockerfile.

Com o Cloud Build, é possível automatizar a criação dos seus contêineres, enviá-los para o Artifact Registry e implantá-los no App Engine.

Permissões necessárias

Por padrão, a conta de serviço padrão do App Engine tem permissões para extrair e enviar para repositórios no mesmo projeto.

Se o App Engine estiver em um projeto diferente, será preciso conceder permissões à conta de serviço do App Engine para acessar o repositório do Artifact Registry.

Como implantar no App Engine

É possível implantar uma imagem hospedada pelo Artifact Registry no App Engine usando a ferramenta de linha de comando gcloud.

  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
    

    onde:

    • 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.

    Por exemplo:

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