Share via


Início Rápido: Utilizar Azure App Configuration no Azure Container Apps

Neste início rápido, irá utilizar Azure App Configuration numa aplicação em execução no Azure Container Apps. Desta forma, pode centralizar o armazenamento e a gestão da configuração das suas aplicações no Container Apps. Este início rápido tira partido da aplicação ASP.NET Core criada no Início Rápido: Criar uma aplicação ASP.NET Core com App Configuration. Irá contentorizar a aplicação e implementá-la no Azure Container Apps. Conclua o início rápido antes de continuar.

Dica

Ao seguir este início rápido, de preferência registe todos os novos recursos num único grupo de recursos, para que possa agrupá-los todos num único local e eliminá-los mais rapidamente mais tarde, se já não precisar deles.

Pré-requisitos


Ligar Azure App Configuration à aplicação de contentor

No portal do Azure, navegue para a instância da Aplicação de Contentor. Siga o início rápido do Service Connector para o Azure Container Apps para criar uma ligação de serviço com o seu arquivo de App Configuration com as definições abaixo.

  • No separador Noções Básicas :

    • selecione App Configuration para Tipo de serviço

    • escolha a sua loja de App Configuration para "App Configuration"

      Captura de ecrã a mostrar a plataforma do Azure a mostrar um formulário no menu Do Conector de Serviços numa Aplicação de Contentor.

  • No separador Autenticação :

    • selecione Tipo de autenticação da cadeia de ligação e Só de Leitura para "Permissões para a cadeia de ligação
    • expanda o menu Avançadas . Nas informações de Configuração, deve existir uma variável de ambiente já criada chamada "AZURE_APPCONFIGURATION_CONNECTIONSTRING". Edite a variável de ambiente ao selecionar o ícone à direita e altere o nome para ConnectionStrings__AppConfig. Temos de fazer esta alteração, uma vez que ConnectionStrings__AppConfig é o nome da variável de ambiente que a aplicação incorporada no início rápido ASP.NET Core irá procurar. Esta é a variável de ambiente que contém a cadeia de ligação para App Configuration. Se tiver utilizado outra aplicação para seguir este início rápido, utilize o nome da variável de ambiente correspondente. Em seguida, selecione Done (Concluído).
  • Utilize valores predefinidos para tudo o resto.

Uma vez concluído, será adicionada uma variável de ambiente com o nome ConnectionStrings__AppConfig ao contentor da sua Aplicação de Contentor. O respetivo valor é uma referência do segredo da Aplicação de Contentor, a cadeia de ligação do seu arquivo de App Configuration.

Criar um contentor

  1. Execute o comando de publicação dotnet para criar a aplicação no modo de lançamento e criar os recursos na pasta publicada .

    dotnet publish -c Release -o published
    
  2. Crie um ficheiro com o nome Dockerfile no diretório que contém o ficheiro .csproj, abra-o num editor de texto e introduza o seguinte conteúdo. Um Dockerfile é um ficheiro de texto que não tem uma extensão e que é utilizado para criar uma imagem de contentor.

    FROM mcr.microsoft.com/dotnet/aspnet:6.0 AS runtime
    WORKDIR /app
    COPY published/ ./
    ENTRYPOINT ["dotnet", "TestAppConfig.dll"]
    
  3. Crie o contentor ao executar o seguinte comando.

    docker build --tag aspnetapp .
    

Criar uma instância do Azure Container Registry

Criar um Azure Container Registry (ACR). O ACR permite-lhe criar, armazenar e gerir imagens de contentor.

  1. Para criar o registo de contentor, siga o início rápido Azure Container Registry.
  2. Assim que a implementação estiver concluída, abra a instância do ACR e, no menu esquerdo, selecione Definições > Chaves de acesso.
  3. Tome nota do valor do servidor de início de sessão listado nesta página. Irá utilizar estas informações num passo posterior.
  4. Mude Administração utilizador para Ativado. Esta opção permite-lhe ligar o ACR ao Azure Container Apps com credenciais de utilizador administrador. Em alternativa, pode deixá-la desativada e configurar a aplicação de contentor para extrair imagens do registo com uma identidade gerida.

Enviar a imagem para Azure Container Registry

Envie a imagem do Docker para o ACR criado anteriormente.

  1. Execute o comando az acr login para iniciar sessão no registo.

    az acr login --name myregistry
    

    O comando devolve Login Succeeded assim que o início de sessão for bem-sucedido.

  2. Utilize a etiqueta docker para etiquetar os detalhes adequados da imagem.

    docker tag aspnetapp myregistry.azurecr.io/aspnetapp:v1
    

    Dica

    Para rever a lista das imagens e etiquetas do docker existentes, execute docker image ls. Neste cenário, deverá ver pelo menos duas imagens: aspnetapp e myregistry.azurecr.io/aspnetapp.

  3. Utilize docker push para enviar a imagem para o registo de contentor. Este exemplo cria o repositório aspnetapp no ACR que contém a aspnetapp imagem. No exemplo abaixo, substitua os marcadores <login-serverde posição <image-name> e <tag> , pelo valor do servidor de início de sessão do ACR, o nome da imagem e a etiqueta de imagem.

    Método:

    docker push <login-server>/<image-name>:<tag>
    

    Exemplo:

    docker push myregistry.azurecr.io/aspnetapp:v1
    
  4. Abra o seu Azure Container Registry no portal do Azure e confirme que, em Repositórios, pode ver o seu novo repositório.

    Captura de ecrã da plataforma do Azure a mostrar um repositório no Azure Container Registries.

Adicionar a sua imagem de contentor ao Azure Container Apps

Atualize a Sua Aplicação de Contentor para carregar a imagem de contentor a partir do ACR.

  1. No portal do Azure, abra a instância do Azure Container Apps.

  2. No menu esquerdo, em Aplicação, selecione Contentores.

  3. Selecione Editar e implementar.

  4. Em Imagem de contentor, clique no nome da imagem de contentor existente.

  5. Atualize as seguintes definições:

    Definição Valor sugerido Descrição
    Origem da imagem Azure Container Registry Selecione Azure Container Registry como origem de imagem.
    Autenticação Credenciais do Administração Utilize a opção de credencial de utilizador administrador que foi ativada anteriormente no registo de contentor. Se não tiver ativado o utilizador administrador mas configurado para utilizar uma identidade gerida, terá de introduzir manualmente a imagem e a etiqueta no formulário.
    Registo myregistry.azurecr.io Selecione o Azure Container Registry que criou anteriormente.
    Imagem aspnetapp Selecione a imagem do docker que criou e emite anteriormente para o ACR.
    Etiqueta de imagem v1 Selecione a etiqueta de imagem na lista.
  6. Selecione Guardar e, em seguida, Criar para implementar a atualização na Aplicação de Contentor do Azure.

Navegue para o URL da Aplicação de Contentor do Azure

No portal do Azure, na instância do Azure Container Apps, aceda ao separador Descrição geral e abra o URL da Aplicação.

A página Web tem o seguinte aspeto:

Captura de ecrã de um browser a apresentar a aplicação em execução.

Limpar os recursos

Se não quiser continuar a utilizar os recursos criados neste artigo, elimine o grupo de recursos que criou aqui para evitar custos.

Importante

A eliminação de um grupo de recursos é irreversível. O grupo de recursos e todos os recursos nele contidos são eliminados permanentemente. Certifique-se de que não elimina acidentalmente os recursos ou o grupo de recursos errados. Se tiver criado os recursos para este artigo dentro de um grupo de recursos que contém outros recursos que pretende manter, elimine cada recurso individualmente do respetivo painel em vez de eliminar o grupo de recursos.

  1. Inicie sessão no portal do Azure e selecione Grupos de recursos.
  2. Na caixa Filtrar por nome , introduza o nome do grupo de recursos.
  3. Na lista de resultados, selecione o nome do grupo de recursos para ver uma descrição geral.
  4. Selecione Eliminar grupo de recursos.
  5. É-lhe pedido que confirme a eliminação do grupo de recursos. Introduza o nome do grupo de recursos a confirmar e selecione Eliminar.

Após alguns instantes, o grupo de recursos e todos os respetivos recursos são eliminados.

Passos seguintes

Neste início rápido, irá:

  • Azure App Configuration ligados ao Azure Container Apps
  • Docker utilizado para criar uma imagem de contentor a partir de uma aplicação ASP.NET Core com definições de App Configuration
  • Criou uma instância do Azure Container Registry
  • Emitemos a imagem para a instância Azure Container Registry
  • Adição da imagem de contentor ao Azure Container Apps
  • Navegue para o URL da instância do Azure Container Apps atualizado com as definições que configurou no seu arquivo de App Configuration.

A identidade gerida permite que um recurso do Azure aceda a outro sem que mantenha segredos. Pode simplificar o acesso das Container Apps a outros recursos do Azure. Para obter mais informações, veja como aceder a App Configuration com a identidade gerida e como [aceder ao Container Registry com a identidade gerida].

Para saber como configurar a sua aplicação Web ASP.NET Core para atualizar dinamicamente as definições de configuração, avance para o próximo tutorial.