Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
En este inicio rápido, aprenderá a crear e implementar su primera aplicación Aspire en Azure App Service. Azure App Service proporciona una plataforma totalmente administrada para hospedar aplicaciones web con mantenimiento de infraestructura integrado, aplicación de revisiones de seguridad y escalado.
Puede completar este inicio rápido completo en el explorador mediante GitHub Codespaces, que proporciona un entorno de desarrollo preconfigurado con .NET 10 y la CLI para desarrolladores de Azure ya instaladas. Al final, tiene una aplicación Aspire en ejecución implementada en Azure App Service.
Nota:
Aunque este inicio rápido se centra en proyectos de .NET, Aspire también admite aplicaciones de Python a partir de Aspire 1.3. Las aplicaciones De Python Aspire también se pueden implementar en Azure App Service mediante la misma integración.
Prerrequisitos
- Una cuenta de Azure con una suscripción activa. Cree una cuenta gratuita.
- Una cuenta de GitHub. Cree una cuenta gratuita.
Creación de una aplicación de inicio de Aspire en un espacio de código de GitHub
Vaya a github.com/codespaces.
Para la plantilla de .NET, seleccione Usar esta plantilla.
Tu navegador abre un nuevo espacio de código con Visual Studio Code ejecutándose en el navegador. El entorno incluye .NET 10 y la CLI para desarrolladores de Azure preinstalado.
En el terminal de codespace, instale la CLI de Aspire globalmente:
dotnet tool install -g Aspire.CliEn el terminal, cree una nueva aplicación Aspire. Cuando se le solicite, acepte los valores predeterminados.
aspire new aspire-starter --name aspire-starterEl comando crea un nuevo directorio denominado
aspire-startercon una solución Aspire completa, entre las que se incluyen:- Un proyecto de AppHost para orquestación
- Un proyecto ServiceDefaults para configuraciones compartidas
- API de ejemplo y proyectos de frontend web
Vaya al directorio del proyecto:
cd aspire-starter
Incorporación de la integración de Azure App Service
Configure la aplicación Aspire para implementarla en Azure App Service.
Agregue el paquete de integración de hospedaje de Azure App Service:
aspire add azure-appserviceEl
aspire addcomando detecta automáticamente el proyecto AppHost y agrega el paquete Aspire.Hosting.Azure.AppService a él.Abra el aspire-starter/aspire-starter. AppHost/AppHost.cs.
Agregue un entorno de Azure App Service después de la
CreateBuilderlínea:builder.AddAzureAppServiceEnvironment("app-service-env");Para más información, consulte ¿Necesito un entorno de App Service para ejecutar aplicaciones Aspire?.
Agregue
.WithExternalHttpEndpoints()alapiserviceproyecto. El código completoapiservicedebe ser similar al siguiente:var apiService = builder.AddProject<Projects.aspire_starter_ApiService>("apiservice") .WithExternalHttpEndpoints() .WithHttpHealthCheck("/health");Nota:
El
apiservicerequiere.WithExternalHttpEndpoints()ya que Aspire con App Service actualmente no gestiona el tráfico entre aplicaciones mediante puntos finales internos.apiservicedebe ser accesible a través de puntos de conexión HTTP externos para que funcione la comunicación entre servicios.
Implementación en Azure
Desde aspire-starter directamente, inicialice azd en el directorio actual:
azd initCuando se le solicite,
- Seleccione Examinar el directorio actual.
- Seleccione Confirmar y continuar inicializando mi aplicación.
- En Escriba un nombre de entorno único:, escriba un nombre que desee como
aspire-quickstart.
El comando crea los archivos de configuración necesarios para la implementación, que de forma predeterminada es solo un archivo azure.yaml que apunta al proyecto de AppHost. Esta configuración permite que
azd uptrabaje para identificar su proyecto AppHost. Elhost: containerappvalor no determina el destino de implementación porqueazdusa la infraestructura definida en el archivo AppHost.cs (en este caso, el entorno de App Service que agregó conAddAzureAppServiceEnvironment).Inicie sesión en Azure con
azd auth login. Se iniciará una página de inicio de sesión interactiva. Inicie sesión con las credenciales de su cuenta de Azure.azd auth loginImplemente la aplicación:
azd upCuando se le solicite,
- Suscripción: seleccione la suscripción de Azure.
- Ubicación: seleccione una región cercana (por ejemplo, (Europa) Oeste de Europa (westeurope))
El
azd upcomando realiza las siguientes acciones en función del código de AppHost.cs :- Crea un nuevo grupo de recursos
- Crea un plan de servicio de aplicaciones de Azure
- Crea un Azure Container Registry
- Crea dos aplicaciones web de App Service (una para la API, otra para el front-end)
- Crea un recurso de panel de Aspire administrado
- Compila y containeriza tus aplicaciones
- Inserta los contenedores en Azure Container Registry
- Implementa los contenedores en App Service
Este proceso tarda varios minutos en completarse.
Cuando se complete la implementación, azd muestra las direcciones URL del punto de conexión de los servicios implementados.
Deploying services (azd deploy) (✓) Done: Deploying service apiservice - Endpoint: https://apiservice-xxxxxx.azurewebsites.net/ (✓) Done: Deploying service webfrontend - Endpoint: https://webfrontend-xxxxxx.azurewebsites.net/ Aspire Dashboard: https://app-service-env-aspiredashboard-xxxxxx.azurewebsites.net SUCCESS: Your up workflow to provision and deploy to Azure completed in 1 minute 49 seconds.
Examinar la aplicación Aspire
En la salida de la implementación, busque la dirección URL del
webfrontendservicio. Tiene un aspecto similar al siguiente:webfrontend: https://webfrontend-xxxxx.azurewebsites.netCopie la dirección URL y ábrala en una nueva pestaña del explorador.
Verá la aplicación de inicio Aspire que se ejecuta en Azure App Service. El front-end web se comunica con el servicio de API, que muestra la arquitectura distribuida.
Intente navegar por la aplicación para comprobar que funciona correctamente.
Para ver el panel de Aspire, busque la dirección URL del panel de Aspire en el resultado de la implementación y ábrala en una nueva pestaña del navegador.
Visualización de los detalles de implementación en Azure Portal
Vaya a Azure Portal.
En la barra de búsqueda, escriba grupos de recursos y seleccione Grupos de recursos.
Busque y seleccione el grupo de recursos creado por azd (comienza con
rg-seguido del nombre del entorno).
Debería ver los siguientes recursos:
- Plan de App Service: la infraestructura de hospedaje
- App Services: tus aplicaciones de interfaz web y servicio de API
- Panel de Aspire: un recurso administrado de Azure, protegido por el control de acceso respaldado por recursos (RBAC).
- Container Registry: almacena las imágenes de contenedor
- Identidad asignada por el usuario: proporciona acceso seguro entre servicios
Limpieza de recursos
Cuando ya no necesite los recursos de Azure, elimínelos para evitar incurrir en cargos.
En el terminal de codespace, ejecute:
azd downCuando se le solicite, confirme que desea eliminar los recursos.
Seleccione Sí para eliminar permanentemente el grupo de recursos y todos los recursos.
El comando quita todos los recursos de Azure creados durante este inicio rápido.
Preguntas más frecuentes
- ¿Necesito un entorno de App Service para ejecutar aplicaciones Aspire?
- ¿Cómo se personaliza la implementación de App Service?
¿Necesito un entorno de App Service para ejecutar aplicaciones Aspire?
No, no necesita un entorno de App Service para ejecutar aplicaciones Aspire en Azure App Service. El método AddAzureAppServiceEnvironment crea un concepto de entorno Aspire que representa la infraestructura de hospedaje para su aplicación, que en este caso es App Service. A pesar de su nombre, no hace referencia a entornos de App Service.
Cuando llama a AddAzureAppServiceEnvironment, se realiza el aprovisionamiento de:
- Un plan de Azure App Service (nivel Premium P0V3 en Linux de forma predeterminada)
- Una instancia de Azure Container Registry para almacenar imágenes de contenedor
- Una identidad administrada asignada por el usuario para el acceso seguro entre servicios
Este concepto de entorno de Aspire agrupa los recursos y proporciona la infraestructura necesaria para implementar las aplicaciones Aspire en Azure App Service.
¿Cómo se personaliza la implementación de App Service?
Puede personalizar la implementación de App Service modificando la configuración de AppHost.cs. La integración de Aspire Azure App Service proporciona varias maneras de personalizar la implementación:
- Configurar el plan de servicio de aplicaciones: Ajustar las opciones de SKU, nivel y escalabilidad
- Personalización de la configuración de App Service: adición de variables de entorno, cadenas de conexión y configuración de la aplicación
- Configuración de la infraestructura: modificación de redes, autenticación y otros recursos de Azure
- Uso de recursos existentes: conexión a planes de App Service existentes u otros recursos de Azure
Para más información, consulte Configuración de una aplicación Aspire para Azure App Service.
Pasos siguientes
Ha implementado correctamente una aplicación Aspire en Azure App Service. Estos son algunos pasos siguientes para explorar: