Tutorial: Implementación de un proyecto de .NET Aspire mediante el Azure Developer CLI
El Azure Developer CLI (azd
) permite implementar proyectos de .NET Aspire a través de Acciones de GitHub o de canalizaciones Devops de Azure mediante la configuración automática de la autenticación y del entorno necesario. En este artículo se explica el proceso de creación e implementación de un proyecto de .NET Aspire en Azure Container Apps mediante azd
. Aprendes los siguientes conceptos:
- Explorar cómo funciona la integración de
azd
con proyectos de .NET.NET Aspire - Creación y configuración de un repositorio GitHub o Azure DevOps para un proyecto de .NET Aspire mediante
azd
- Supervisa y explora el flujo de trabajo de Acciones GitHub, las ejecuciones de la canalización de DevOps Azure y las implementaciones de Azure.
Prerrequisitos
Para trabajar con .NET.NET Aspire, necesita lo siguiente instalado localmente:
- .NET 8.0 o .NET 9.0
- Un entorno de ejecución de contenedor compatible con OCI, como:
- Docker de escritorio o Podman. Para obtener más información, consulte container runtime.
- Un entorno para desarrolladores integrado (IDE) o un editor de código, como:
- Visual Studio 2022 versión 17.9 o posterior (opcional)
-
Visual Studio Code (opcional)
- C# Dev Kit: extensión (opcional)
- JetBrains Rider con el complemento .NET.NET Aspire (opcional)
Para obtener más información, consulte configuración y herramientas de .NET.NET Aspirey sdk de .NET.NET Aspire.
- Azure organización de DevOps o elegir una organización existente
-
Azure de token de acceso personal (PAT) de DevOps y guárdelo para su uso posterior. Configure el token con los permisos siguientes:
- Grupos de agentes (leer, administrar)
- Compilación (lectura y ejecución)
- Código (completo)
- Proyecto y equipo (lectura, escritura y administración)
- Lanzamiento (lectura, escritura, ejecución y administración)
- Conexiones de servicio (lectura, consulta y administración)
También debe instalar localmente Azure Developer CLI (versión 1.5.1 o posterior). Entre las opciones de instalación comunes se incluyen las siguientes:
Creación de una solución de .NET.NET Aspire
Como punto de partida, en este artículo se supone que ha creado una solución de .NET.NET Aspire a partir de la plantilla de aplicación de inicio .NET.NET Aspire de. Para obtener más información, consulte Inicio rápido: Crear tu primera aplicación de .NET.NET Aspire.
Inicialización de la plantilla
Abra una nueva ventana de terminal y
cd
en el directorio de su solución .NET.NET Aspire.Ejecute el comando
azd init
para inicializar el proyecto conazd
, que inspeccionará la estructura del directorio local y determinará el tipo de aplicación.azd init
Para obtener más información sobre el comando
azd init
, vea azd init.Seleccione Usar código en el directorio actual cuando
azd
le pida dos opciones de inicialización de la aplicación.? How do you want to initialize your app? [Use arrows to move, type to filter] > Use code in the current directory Select a template
Después de examinar el directorio,
azd
le pedirá que confirme que encontró el proyecto correcto de .NET.NET AspireAppHost. Seleccione la opción Confirmar y continuar con la inicialización de la aplicación.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
Escriba un nombre de entorno, que se usa para asignar un nombre a los recursos aprovisionados en Azure y administrar entornos diferentes, como
dev
yprod
.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
genera una serie de archivos y los coloca en el directorio de trabajo. Estos archivos son:
- azure.yaml: describe los servicios de la aplicación, como .NET Aspire proyecto AppHost, y los asigna a Azure recursos.
-
.azure/config.json: archivo de configuración que informa
azd
cuál es el entorno activo actual. - .azure/aspireazddev/.env: Contiene anulaciones específicas del entorno.
Crear el repositorio GitHub y la canalización
El Azure Developer CLI permite crear automáticamente canalizaciones de CI/CD con las configuraciones y permisos correctos para aprovisionar e implementar recursos en Azure.
azd
también puede crear un repositorio de GitHub para la aplicación si aún no existe.
Ejecute el comando
azd pipeline config
para configurar la canalización de implementación y conectarla de forma segura a Azure:azd pipeline config
Seleccione la suscripción para aprovisionar e implementar los recursos de la aplicación.
Seleccione la ubicación Azure para utilizar los recursos.
Cuando se le pida que cree un nuevo repositorio de Git en el directorio, escriba y y presione Entrar.
Nota
La creación de un repositorio de GitHub requiere que haya iniciado sesión en GitHub. Hay algunas selecciones que varían en función de sus preferencias. Después de iniciar sesión, se le pedirá que cree un nuevo repositorio en el directorio actual.
Seleccione Crear un nuevo repositorio de GitHub privado para configurar el repositorio git remoto.
Escriba un nombre de su elección para el nuevo repositorio de GitHub o presione ENTRAR para usar el nombre predeterminado.
azd
crea un nuevo repositorio en GitHub y lo configura con los secretos necesarios para autenticarse en Azure.Escriba y para continuar cuando
azd
le pida que confirme e inserte los cambios locales para iniciar la canalización configurada.
Explora el flujo de trabajo de acciones de GitHub y su implementación
Vaya al nuevo repositorio de GitHub utilizando el enlace generado por
azd
.Seleccione la pestaña Acciones para ver los flujos de trabajo del repositorio. Debería ver el nuevo flujo de trabajo en ejecución o ya completado. Seleccione el flujo de trabajo para ver los pasos del trabajo y los detalles de los registros de la ejecución. Por ejemplo, puede expandir pasos como Instalar .NET.NET Aspire Workload o Implementar aplicación para ver los detalles de la acción completada.
Seleccione Implementar aplicación para expandir los registros de ese paso. Debería ver dos direcciones URL de punto de conexión impresas para el
apiservice
ywebfrontend
. Seleccione cualquiera de estos vínculos para abrirlos en otra pestaña del explorador y explorar la aplicación implementada.
¡Felicidades! Ha implementado correctamente un proyecto de .NET Aspire mediante las acciones de Azure Developer CLI y GitHub.
Crea el repositorio y el pipeline de Azure DevOps
Importante
Como se mencionó en los requisitos previos, deberá crear una organización Azure DevOps o seleccionar una organización existente para completar los pasos que se indican a continuación. También deberá crear un token de acceso personal (PAT) con los permisos enumerados en los requisitos necesarios.
El Azure Developer CLI permite crear automáticamente canalizaciones con las configuraciones y permisos correctos para aprovisionar e implementar recursos en Azure.
azd
también puede crear un repositorio de Azure pipelines para tu aplicación si aún no existe.
Ejecute el comando
azd pipeline config
para configurar la canalización de implementación y conectarla de forma segura a Azure. Incluya la opción--provider azdo
para usar canalizaciones de Azure en lugar de la configuración predeterminada GitHub Actions.azd pipeline config --provider azdo
Seleccione la suscripción para aprovisionar e implementar los recursos de la aplicación.
Seleccione la ubicación Azure para utilizar los recursos.
Pegue el token de acceso personal que creó anteriormente.
Escriba el Azure nombre de la organización de DevOps que creó o seleccionó.
Cuando se le pida que cree un nuevo repositorio en el directorio actual, escriba y y presione Intro.
Cuando se le pida que configure el git remoto, seleccione Crear una nueva Azure DevOps Project.
Escriba un nombre único de su elección para el nuevo repositorio, como
aspireazd
.azd
crea un nuevo repositorio en Azure Repos y lo configura con los secretos necesarios para autenticarse en Azure.Escriba y para continuar cuando
azd
le pida que confirme e inserte los cambios locales para iniciar la canalización configurada.
Exploración de la canalización e implementación de la aplicación
Vaya a su nuevo pipeline de Azure utilizando el enlace de estado generado por
azd
.Seleccione la ejecución de canalización completada para ver el resumen.
Seleccione el vínculo del trabajo en la parte inferior de la vista para ir a los detalles del trabajo.
La página de detalles del trabajo muestra el estado de todas las fases individuales. Seleccione Aprovisionar infraestructura para ver los registros de esa fase, que detallan todos los pasos de aprovisionamiento completados por
azd
. En la parte inferior de los registros, tome nota del mensaje de estado final y vincule al grupo de recursos Azure aprovisionado.Seleccione el vínculo situado en la parte inferior de los registros de salida de aprovisionamiento para ir al nuevo grupo de recursos Azure.
Nota
También puede navegar directamente a su nuevo grupo de recursos buscándolo en el Portal de Azure. El nombre del grupo de recursos será el nombre del entorno que proporcionó a
azd
, prefijado conrg-
.Seleccione la aplicación contenedora webfrontend, que hospeda la parte pública de tu sitio.
En la página de detalles de webfrontend, seleccione el enlace url de la aplicación para abrir el sitio en el navegador.
Importante
Si se produce un error de 403 Forbidden
al ver el sitio en el explorador, asegúrese de que la configuración de entrada está configurada correctamente. En la página aplicación webfrontend del portal de Azure, vaya a entrada en el panel de navegación izquierdo. Asegúrese de que tráfico de entrada esté configurado en Aceptar tráfico desde cualquier lugar y guarde los cambios.
¡Felicidades! Implementó correctamente un proyecto de .NET Aspire utilizando el Azure Developer CLI y los pipelines de Azure.
Limpieza de recursos
Ejecute el siguiente comando Azure CLI para eliminar el grupo de recursos cuando ya no necesite los recursos de Azure que creó. Al eliminar el grupo de recursos también se eliminan los recursos contenidos en él.
az group delete --name <your-resource-group-name>
Para obtener más información, consulte el apartado Limpieza de recursos en Azure.