Compartilhar via


Início Rápido: compilar e implantar de um repositório nos Aplicativos de Contêiner do Azure

Este artigo demonstra como criar e implantar um microsserviço nos Aplicativos de Contêiner do Azure de um repositório GitHub usando a linguagem de programação de sua escolha. Neste início rápido, você vai criar um microsserviço de exemplo, representando um serviço de API Web de back-end que retorna uma coleção estática de álbuns de música.

Este aplicativo de exemplo está disponível em duas versões. Uma versão inclui um contêiner em que a origem contém um Dockerfile. A outra versão não tem Dockerfile. Selecione a versão que melhor reflete seu código-fonte. Se você for novo em contêineres, selecione a opção Sem Dockerfile na parte superior.

Observação

Você também pode criar e implantar este aplicativo de exemplo no seu sistema de arquivo local. Para obter mais informações, consulte Compilar com base no código-fonte local e implantar seu aplicativo nos Aplicativos de Contêiner do Azure.

A captura de tela a seguir mostra a saída da API do álbum implatado.

Captura de tela da resposta do ponto de extremidade da API de álbuns.

Pré-requisitos

Para concluir este projeto, você precisa dos seguintes itens:

Requisito Instruções
Conta do Azure Se você não tiver, crie uma conta gratuita. Você precisa da permissão de Colaborador ou Proprietário na assinatura do Azure para continuar.

Consulte Atribuir funções do Azure usando o portal do Azure para obter detalhes.
Conta do GitHub Obtenha uma gratuitamente.
Git Instale o git
CLI do Azure Instale a CLI do Azure.

Instalação

Para entrar no Azure usando a CLIl, execute o comando a seguir e siga os prompts para concluir o processo de autenticação.

az login

Para garantir que você esteja executando a versão mais recente da CLI, execute o comando “upgrade”.

az upgrade

Em seguida, instale ou atualize a extensão dos Aplicativos de Contêiner do Azure para a CLI.

Se você receber erros sobre parâmetros ausentes ao executar comandos az containerapp na CLI do Azure ou cmdlets do módulo Az.App no Azure PowerShell, verifique se está com a versão mais recente da extensão Aplicativos de Contêiner do Azure instalada.

az extension add --name containerapp --upgrade

Observação

A partir de maio de 2024, as extensões da CLI do Azure já não permitem funcionalidades de versão prévia do recurso por padrão. Para acessar as versões prévias dos recursos dos Aplicativos de Contêiner, instale a extensão Aplicativos de Contêiner com --allow-preview true.

az extension add --name containerapp --upgrade --allow-preview true

Agora que a extensão ou módulo atual está instalado, registre os namespaces Microsoft.App e Microsoft.OperationalInsights.

az provider register --namespace Microsoft.App
az provider register --namespace Microsoft.OperationalInsights

Criar variáveis de ambiente

Agora que a configuração da CLI do Azure foi concluída, você pode definir as variáveis de ambiente que são usadas ao longo deste artigo.

Defina as variáveis a seguir no shell bash.

export RESOURCE_GROUP="album-containerapps"
export LOCATION="canadacentral"
export ENVIRONMENT="env-album-containerapps"
export API_NAME="album-api"
export GITHUB_USERNAME="<YOUR_GITHUB_USERNAME>"

Antes de executar o comando, substitua <YOUR_GITHUB_USERNAME> pelo seu nome de usuário do GitHub.

Em seguida, defina um nome de registro de contêiner exclusivo para você.

export ACR_NAME="acaalbums"$GITHUB_USERNAME

Preparar o repositório GitHub

Em uma janela do navegador, acesse o repositório GitHub na seu linguagem preferida e bifurque o repositório.

Selecione o botão Criar fork na parte superior do repositório da API do álbum para bifurcar o repositório em sua conta. Em seguida, copie a URL do repositório para usá-la na próxima etapa.

Em uma janela do navegador, acesse o repositório GitHub na seu linguagem preferida e bifurque o repositório incluindo branches.

Selecione o botão Criar fork na parte superior do repositório da API do álbum para bifurcar o repositório em sua conta. Desmarque “Copiar somente o branch main” para também bifurcar o branch buildpack.


Compilar e implantar o aplicativo de contêiner

Crie e implante seu primeiro aplicativo de contêiner do repositório bifurcado do GitHub com o comando containerapp up. Este comando vai:

  • Criar o grupo de recursos
  • Criar o ambiente de Aplicativos de Contêiner com um workspace do Log Analytics
  • Criar um Registro de Contêiner do Azure
  • Criar um fluxo de trabalho do GitHub Action para compilar e implantar o aplicativo de contêiner
  • Criar o grupo de recursos
  • Criar o ambiente de Aplicativos de Contêiner com um workspace do Log Analytics
  • Criar automaticamente um registro padrão como parte do seu ambiente
  • Criar um fluxo de trabalho do GitHub Action para compilar e implantar o aplicativo de contêiner

Quando você envia um novo código por push para o repositório, a Ação do GitHub será:

  • Compilar a imagem de contêiner e efetuá-la por push para o Registro de Contêiner do Azure
  • Implantar a imagem de contêiner no aplicativo de contêiner criado

O comando up usa o Dockerfile na raiz do repositório para criar a imagem de contêiner. A instrução EXPOSE no Dockerfile define a porta de destino. Um arquivo do Docker não é necessário para criar um aplicativo de contêiner.

  • Detectar automaticamente a linguagem e o runtime
  • Criar a imagem usando o Buildpack apropriado
  • Enviar a imagem por push para o registro padrão dos Aplicativos de Contêiner do Azure

O aplicativo de contêiner precisa ser acessível para o tráfego de entrada. Certifique-se de expor a porta 8080 para escutar solicitações de entrada.

No comando a seguir, substitua o <YOUR_GITHUB_REPOSITORY_NAME> pelo nome do repositório GitHub na forma de https://github.com/<OWNER>/<REPOSITORY-NAME> ou <OWNER>/<REPOSITORY-NAME>.

No comando a seguir, substitua o <YOUR_GITHUB_REPOSITORY_NAME> pelo nome do repositório GitHub na forma de https://github.com/<OWNER>/<REPOSITORY-NAME> ou <OWNER>/<REPOSITORY-NAME>. Use a opção --branch buildpack para apontar para a fonte de exemplo sem um Dockerfile.

az containerapp up \
  --name $API_NAME \
  --resource-group $RESOURCE_GROUP \
  --location $LOCATION \
  --environment $ENVIRONMENT \
  --context-path ./src \
  --repo <YOUR_GITHUB_REPOSITORY_NAME>
az containerapp up \
  --name $API_NAME \
  --resource-group $RESOURCE_GROUP \
  --location $LOCATION \
  --environment $ENVIRONMENT \
  --context-path ./src \
  --ingress external \
  --target-port 8080 \
  --repo <YOUR_GITHUB_REPOSITORY_NAME>
  --branch buildpack
  --

Usando a URL e o código do usuário exibido no terminal, vá para a página de ativação do dispositivo do GitHub em um navegador e insira o código do usuário na página. Siga os prompts para autorizar a CLI do Azure a acessar seu repositório GitHub.

O comando up cria um fluxo de trabalho do GitHub Action na pasta .github/workflows do repositório. O fluxo de trabalho é disparado para compilar e implantar seu aplicativo de contêiner quando você envia alterações por push para o repositório.


Verificar a implantação

Copie o nome de domínio retornado pelo containerapp up para um navegador da Web. No navegador da Web, vá até o ponto de extremidade /albums da URL.

Captura de tela da resposta do ponto de extremidade da API de álbuns.

Limpar os recursos

Se você não pretende continuar no tutorial Implantar um front-end, remova os recursos do Azure criados durante este início rápido com o comando a seguir.

Cuidado

O comando a seguir exclui o grupo de recursos especificado e todos os recursos contidos nele. Se o grupo contiver recursos fora do escopo deste início rápido, eles também serão excluídos.

az group delete --name $RESOURCE_GROUP

Dica

Está enfrentando problemas? Deixe-nos saber sobre GitHub abrindo um problema no repositório dos Aplicativos de Contêiner do Azure.

Próximas etapas

Depois de concluir este início rápido, você pode continuar no Tutorial: Comunicação entre microsserviços nos Aplicativos de Contêiner do Azure para saber como implantar um aplicativo de front-end que chama a API.