Eventos
17 de mar., 23 - 21 de mar., 23
Junte-se à série de encontros para criar soluções de IA escaláveis com base em casos de uso do mundo real com outros desenvolvedores e especialistas.
Registrar agoraNão há mais suporte para esse navegador.
Atualize o Microsoft Edge para aproveitar os recursos, o suporte técnico e as atualizações de segurança mais recentes.
.NET
.NET Aspire projetos são projetados para serem executados em ambientes containerizados.
Azure Container Apps é um ambiente totalmente gerenciado que permite executar microsserviços e aplicativos em contêineres em uma plataforma sem servidor. Este artigo orientará você na criação de uma nova solução de .NET Aspire e na implantação dela no Microsoft Azure Container Apps usando o Azure Developer CLI (azd
). Você aprenderá a concluir as seguintes tarefas:
Para trabalhar com .NET.NET Aspire, você precisa do seguinte instalado localmente:
Para obter mais informações, consulte .NET.NET Aspirede instalação e ferramentas e .NET.NET Aspiredo SDK.
Como alternativa a este tutorial e a um guia mais aprofundado, consulte Implantar um projeto de .NET Aspire para Azure Container Apps usando azd
(guia detalhado).
Com .NET Aspire e Azure Container Apps (ACA), você tem um ótimo cenário de hospedagem para criar seus aplicativos nativos de nuvem com .NET. Criamos alguns excelentes novos recursos no Azure Developer CLI (azd
) específicos para tornar o desenvolvimento e a implantação de .NET Aspire para Azure uma experiência sem atritos. Você ainda pode usar as opções Azure CLI e/ou Bicep quando precisar de um nível granular de controle sobre suas implantações. Mas para novos projetos, você não encontrará um caminho mais fácil para o sucesso para obter uma nova topologia de microsserviço implantada na nuvem.
Como ponto de partida, este artigo pressupõe que você criou um projeto de .NET.NET Aspire a partir do modelo de Aplicativo Inicial .NET.NET Aspire. Para obter mais informações, consulte Início Rápido: Criar seu primeiro projeto .NET.NET Aspire.
Quando você cria novos recursos Azure, é importante seguir os requisitos de nomenclatura. Para Azure Container Apps, o nome deve ter de 2 a 32 caracteres e consistir em letras minúsculas, números e hifens. O nome deve começar com uma letra e terminar com um caractere alfanumérico.
Para obter mais informações, consulte regras de nomenclatura e restrições para recursos Azure.
O processo de instalação de azd
varia de acordo com seu sistema operacional, mas está amplamente disponível por meio de winget
, brew
, apt
ou diretamente por meio de curl
. Para instalar azd
, consulte Instalar Azure Developer CLI.
Abra uma nova janela de terminal e cd
no diretório de sua solução de .NET.NET Aspire.
Execute o comando azd init
para inicializar seu projeto com azd
, que inspecionará a estrutura do diretório local e determinará o tipo de aplicativo.
azd init
Para obter mais informações sobre o comando azd init
, consulte azd init.
Selecione Usar código no diretório atual quando azd
lhe solicitar que escolha entre duas opções de inicialização de aplicativo.
? How do you want to initialize your app? [Use arrows to move, type to filter]
> Use code in the current directory
Select a template
Depois de verificar o diretório,
Detected services:
.NET (Aspire)
Detected in: D:\source\repos\AspireSample\AspireSample.AppHost\AspireSample.AppHost.csproj
azd will generate the files necessary to host your app on Azure using Azure Container Apps.
? Select an option [Use arrows to move, type to filter]
> Confirm and continue initializing my app
Cancel and exit
Insira um nome de ambiente, que é usado para nomear recursos provisionados em Azure e gerenciar ambientes diferentes, como dev
e prod
.
Generating files to run your app on Azure:
(✓) Done: Generating ./azure.yaml
(✓) Done: Generating ./next-steps.md
SUCCESS: Your app is ready for the cloud!
You can provision and deploy your app to Azure by running the azd up command in this directory. For more information on configuring your app, see ./next-steps.md
azd
gera vários arquivos e os coloca no diretório de trabalho. Estes arquivos são:
azd
qual é o ambiente ativo atual.Depois que um modelo de azd
é inicializado, o processo de provisionamento e implantação pode ser executado como um comando único do diretório do projeto AppHost usando azd up:
azd up
Selecione a assinatura na qual você deseja implantar na lista de opções disponíveis:
Select an Azure Subscription to use: [Use arrows to move, type to filter]
1. SampleSubscription01 (xxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxx)
2. SamepleSubscription02 (xxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxx)
Selecione o local Azure desejado para uso na lista de opções disponíveis.
Select an Azure location to use: [Use arrows to move, type to filter]
42. (US) Central US (centralus)
43. (US) East US (eastus)
> 44. (US) East US 2 (eastus2)
46. (US) North Central US (northcentralus)
47. (US) South Central US (southcentralus)
Depois de fazer suas seleções, azd
executa o processo de provisionamento e implantação.
By default, a service can only be reached from inside the Azure Container Apps environment it is running in. Selecting a service here will also allow it to be reached from the Internet.
? Select which services to expose to the Internet webfrontend
? Select an Azure Subscription to use: 1. <YOUR SUBSCRIPTION>
? Select an Azure location to use: 1. <YOUR LOCATION>
Packaging services (azd package)
Provisioning Azure resources (azd provision)
Provisioning Azure resources can take some time.
Subscription: <YOUR SUBSCRIPTION>
Location: <YOUR LOCATION>
You can view detailed progress in the Azure Portal:
<LINK TO DEPLOYMENT>
(✓) Done: Resource group: <YOUR RESOURCE GROUP>
(✓) Done: Container Registry: <ID>
(✓) Done: Log Analytics workspace: <ID>
(✓) Done: Container Apps Environment: <ID>
SUCCESS: Your application was provisioned in Azure in 1 minute 13 seconds.
You can view the resources created under the resource group <YOUR RESOURCE GROUP> in Azure Portal:
<LINK TO RESOURCE GROUP OVERVIEW>
Deploying services (azd deploy)
(✓) Done: Deploying service apiservice
- Endpoint: <YOUR UNIQUE apiservice APP>.azurecontainerapps.io/
(✓) Done: Deploying service webfrontend
- Endpoint: <YOUR UNIQUE webfrontend APP>.azurecontainerapps.io/
Aspire Dashboard: <LINK TO DEPLOYED .NET ASPIRE DASHBOARD>
SUCCESS: Your up workflow to provision and deploy to Azure completed in 3 minutes 50 seconds.
O comando azd up
atua como wrapper para os seguintes comandos de azd
individuais para provisionar e implantar seus recursos em uma única etapa:
azd package
: os projetos de aplicativo e suas dependências são empacotados em contêineres.azd provision
: os recursos de Azure que o aplicativo precisará serão provisionados.azd deploy
: Os projetos são transferidos como contêineres para uma instância do Azure Container Registry e, em seguida, utilizados para a criação de novas revisões do Azure Container Apps nas quais o código será hospedado.Quando os estágios de azd up
forem concluídos, seu aplicativo estará disponível no Azuree você poderá abrir o portal Azure para explorar os recursos.
azd
também gera URLs para acessar os aplicativos implantados diretamente.
Agora que o aplicativo foi provisionado e implantado, você pode navegar até o portal do Azure. No grupo de recursos em que você implantou o aplicativo, você verá os três aplicativos de contêiner e outros recursos.
Clique no aplicativo de contêiner web
para abri-lo no portal.
Clique no link de URL do aplicativo para abrir o front-end no navegador.
Quando você clica no nó "Clima" na barra de navegação, o aplicativo contêiner de front-end web
faz uma chamada para o aplicativo contêiner apiservice
para obter dados. A saída do front-end será armazenada em cache usando o aplicativo de contêiner redis
e a integração de cache de saída .NET AspireRedis. Ao atualizar o front-end algumas vezes, você observará que os dados meteorológicos são armazenados em cache. Ele será atualizado após alguns segundos.
Você pode implantar o painel .NET.NET Aspire como parte do aplicativo hospedado. Agora, esse recurso tem suporte total. Ao implantar, os logs de saída do azd imprimem uma URL adicional para o painel implantado.
Você pode executar azd monitor
para iniciar automaticamente o painel.
azd monitor
Execute o seguinte comando Azure CLI para excluir o grupo de recursos quando você não precisar mais dos recursos de Azure que você criou. Excluir o grupo de recursos também exclui os recursos contidos nele.
az group delete --name <your-resource-group-name>
Para obter mais informações, consulte Limpeza de recursos no Azure.
Comentários do .NET Aspire
O .NET Aspire é um projeto código aberto. Selecione um link para fornecer comentários:
Eventos
17 de mar., 23 - 21 de mar., 23
Junte-se à série de encontros para criar soluções de IA escaláveis com base em casos de uso do mundo real com outros desenvolvedores e especialistas.
Registrar agoraTreinamento
Módulo
Deploy a .NET Aspire solution to Azure - Training
In this module, you'll learn how to deploy a .NET Aspire solution to testing, staging, and production environments.
Certificação
Microsoft Certified: Azure Developer Associate - Certifications
Crie soluções de ponta a ponta no Microsoft Azure para criar Funções do Azure, implementar e gerenciar aplicativos Web, desenvolver soluções utilizando o Armazenamento do Microsoft Azure e muito mais.
Documentação
Implantar um projeto de .NET Aspire usando o Azure Developer CLI - .NET Aspire
Saiba como usar o 'azd' para implantar projetos .NET.NET Aspire.
Saiba como usar o 'azd' para implantar projetos .NET Aspire no Azure Container Apps.
Implantar projetos .NET Aspire para Azure Container Apps usando Visual Studio - .NET Aspire
Saiba como usar o Bicep, a CLI do Azure e o Azure Developer CLI para implantar projetos .NET Aspire em Azure usando o Visual Studio.