Nesta página, descrevemos alguns itens que você precisa conhecer para começar a desenvolver um serviço para o Cloud Run for Anthos.
Exigências de código
Atenda aos requisitos a seguir ao desenvolver um serviço:
- O serviço precisa detectar solicitações.
É possível configurar a porta
em que as solicitações são enviadas.
Dentro das instâncias de contêiner do Cloud Run for Anthos, o valor da variável de ambiente
PORT
sempre reflete a porta para onde as solicitações são enviadas. O código precisa verificar a existência da variável de ambientePORT
e, se ela estiver presente, detectá-la para maximizar a portabilidade. - O serviço precisa ser do tipo sem estado. Ele não pode depender de um estado local permanente.
- O serviço não pode executar atividades em segundo plano fora do escopo do processamento de solicitações.
Confira mais detalhes sobre essas restrições no contrato do ambiente de execução do Contêiner.
Compatibilidade com linguagens de programação
O Cloud Run for Anthos permite escrever código na linguagem de programação que você preferir.
Como usar um servidor da Web
Use um servidor da Web para realizar detecções na porta necessária, bem como para processar e rotear solicitações recebidas. Por exemplo, os desenvolvedores do Node.js podem usar o Express.js, os desenvolvedores do Python podem usar o Flask, os desenvolvedores do Ruby podem usar o Sinatra, e assim por diante.
Como conteinerizar o código
Para implantar no Cloud Run for Anthos, você precisa fornecer uma imagem de contêiner. Uma imagem de contêiner é um formato de empacotamento que inclui o código, os pacotes dele, qualquer dependência binária necessária, o sistema operacional a ser usado e tudo que for preciso para executar o serviço.
Um arquivo chamado Dockerfile é comumente usado para declarar como compilar a imagem de contêiner.
Em geral, os Dockerfiles começam com uma imagem de base (por exemplo, FROM golang:1.11
).
É possível encontrar imagens de base mantidas por autores de SOs e de linguagens no
Docker Hub (em inglês). O Cloud Build verifica se há imagens em cache antes de extrair do Docker Hub. Se você usar uma ferramenta de build de terceiros, poderá configurar o daemon do Docker para verificar se há imagens no mesmo cache. Também é possível encontrar imagens de base gerenciadas pelo Google no
Google Cloud Marketplace.
Se você tem seus próprios binários, confira se eles foram compilados para o Linux ABI x86_64.
Estes recursos fornecem informações adicionais sobre os Dockerfiles:
- Aprenda a sintaxe por meio da referência do Dockerfile e como ela é compostos com as dicas nas Práticas recomendadas para escrever Dockerfiles.
- Leia as práticas recomendadas para compilar contêineres para mais detalhes.
A seguir
- Depois de ter o código de serviço e o Dockerfile, é preciso compilar uma imagem de contêiner e continuar a iterar em testes locais.
- Se você estiver migrando um aplicativo da Web existente, consulte Como migrar o serviço para o Cloud Run for Anthos.
- Para práticas recomendadas para projetar, implementar, testar e implantar um serviço no Cloud Run for Anthos, consulte as dicas de desenvolvimento.