Démarrage rapide : Déployer une application Aspire sur Azure App Service

Dans ce guide de démarrage rapide, vous allez apprendre à créer et déployer votre première application Aspire sur Azure App Service. Azure App Service fournit une plateforme entièrement managée pour l’hébergement d’applications web avec la maintenance intégrée de l’infrastructure, les correctifs de sécurité et la mise à l’échelle.

Vous pouvez terminer tout ce démarrage rapide dans votre navigateur en utilisant le conteneur officiel de développement Aspire pour GitHub Codespaces. À la fin, vous disposez d’une application Aspire en cours d’exécution déployée sur Azure App Service.

Important

L’intégration d’Aspire Azure App Service est actuellement en aperçu.

Ce démarrage rapide utilise un AppHost C# et des projets .NET. Aspire prend également en charge les TypeScript AppHosts et les ressources polyglottes des applications. Pour plus d’informations, consultez Aspire AppHost et les nouveautés d’Aspire 13.5.

Prerequisites

Créer une application de démarrage Aspire dans un espace de code GitHub

  1. Créez un dépôt à partir du modèle de conteneur de développement Aspire.

  2. Dans le nouveau dépôt, sélectionnez Codespaces>>Créer un espace de code sur le principal.

    Votre navigateur ouvre un espace de code avec Visual Studio Code. L’environnement inclut l’interface de ligne de commande Aspire et un certificat local de développement HTTPS fiable.

    Pour plus d’informations, voir Développer avec Aspire en utilisant GitHub Codespaces.

  3. Dans le terminal, créez une nouvelle application Aspire :

    aspire new aspire-starter --name aspire-starter --output aspire-starter
    

    La commande crée un répertoire nommé aspire-starter avec une solution Aspire complète, notamment :

    • Un projet AppHost pour l’orchestration
    • Un projet ServiceDefaults pour les configurations partagées
    • Exemples de projets d’API et de front-end web
  4. Accédez au répertoire du projet :

    cd aspire-starter
    

Ajouter l’intégration d’Azure App Service

Configurez votre application Aspire pour la déployer sur Azure App Service.

  1. Ajoutez l’intégration de l’hébergement Azure App Service :

    aspire add Aspire.Hosting.Azure.AppService
    

    La aspire add commande détecte le projet AppHost et ajoute le Aspire.Hosting.Azure.AppService package. Pour plus d’informations, consultez aspire add.

  2. Ouvrez le aspire-starter/aspire-starter.AppHost/AppHost.cs.

  3. Ajoutez un environnement Azure App Service après la CreateBuilder ligne :

    builder.AddAzureAppServiceEnvironment("app-service-env");
    

    Pour plus d’informations, voir Ai-je besoin d’un environnement App Service pour exécuter des applications Aspire ?.

  4. Ajouter .WithExternalHttpEndpoints() au projet apiservice. Votre ressource complète apiservice devrait ressembler à :

    var apiService = builder.AddProject<Projects.aspire_starter_ApiService>("apiservice")
        .WithExternalHttpEndpoints()
        .WithHttpHealthCheck("/health");
    

    Note

    App Service ne prend en charge que les terminaux HTTP et HTTPS externes ainsi qu’un port cible distinct pour chaque application déployée. Le modèle initial expose déjà le point de terminaison du front-end. Pour plus d’informations, consultez l’intégration Azure App Service Hosting.

  5. Depuis la racine de la solution, exécutez aspire run pour vérifier localement l’AppHost.

    Une capture d’écran du tableau de bord actuel d’Aspire montrant l’environnement du service d’applications et des ressources d’exemple.

Déployer sur Azure

  1. Connectez-vous à Azure :

    az login
    
  2. Déployez l’application :

    aspire deploy
    

    Lorsque vous vous le demandez, sélectionnez votre abonnement Azure, votre emplacement et votre groupe de ressources. Aspire stocke les paramètres de déploiement sélectionnés comme des secrets utilisateurs AppHost afin que vous puissiez les réutiliser.

    La aspire deploy commande effectue les actions suivantes en fonction de votre code AppHost.cs :

    • Crée ou réutilise le groupe de ressources sélectionné
    • Crée un plan de service d'applications Azure
    • Crée un Azure Container Registry
    • Crée deux applications web App Service (une pour l’API, une pour le serveur frontal)
    • Crée une ressource de tableau de bord Aspire managée
    • Génère et conteneurise vos applications
    • Envoie (push) les conteneurs vers Azure Container Registry
    • Déploie les conteneurs sur App Service

    Pour plus d’informations sur les paramètres de déploiement et l’authentification, voir Déployer sur Azure.

  3. Lorsque le déploiement est terminé, la commande affiche les URL de point de terminaison des services déployés et du tableau de bord Aspire.

    Pour plus d’informations sur le flux de déploiement, voir Déployer sur Azure App Service.

Parcourir votre application Aspire

  1. Dans la sortie du déploiement, recherchez l’URL du webfrontend service. Il ressemble à ce qui suit :

    webfrontend: https://webfrontend-xxxxx.azurewebsites.net
    
  2. Copiez l’URL et ouvrez-la dans un nouvel onglet de navigateur.

    Vous voyez l’application de démarrage Aspire s’exécutant dans Azure App Service. Le front-end web communique avec le service API, illustrant l’architecture distribuée.

  3. Essayez de naviguer dans l’application pour vérifier qu’elle fonctionne correctement.

  4. Pour afficher le tableau de bord Aspire, recherchez l’URL du tableau de bord Aspire dans la sortie du déploiement et ouvrez-la dans un nouvel onglet de navigateur.

Afficher les détails du déploiement dans le portail Azure

  1. Accédez au portail Azure.

  2. Dans la barre de recherche, tapez des groupes de ressources et sélectionnez Groupes de ressources.

  3. Trouvez et sélectionnez le groupe de ressources que vous avez choisi pendant aspire deploy.

    Une capture d’écran de la vue du groupe de ressources d’une application Aspire déployée par Aspire.

    Vous devez voir les ressources suivantes :

    • Plan App Service : Infrastructure d’hébergement
    • App Services : Vos applications webfrontend et apiservice
    • Aspire Dashboard : Une ressource Azure gérée protégée par le contrôle d’accès basé sur les rôles (RBAC).
    • Registre de conteneurs : stocke vos images conteneur
    • Identité affectée par l’utilisateur : fournit un accès sécurisé entre les services

Nettoyer les ressources

Lorsque vous n’avez plus besoin des ressources Azure, supprimez-les pour éviter les frais.

  1. Dans votre terminal Codespace, exécutez :

    aspire destroy
    
  2. Lorsque vous y êtes invité, confirmez que vous souhaitez supprimer l’environnement déployé.

La commande exécute l’étape de destruction enregistrée par l’environnement de l’App Service. Pour plus d’informations, consultez aspire destroy.

Caution

aspire destroy supprime tout le groupe de ressources, y compris celles qui n’ont pas été créées par Aspire. Examinez le groupe de ressources cible avant de confirmer.

Questions fréquemment posées

Ai-je besoin d’un environnement App Service pour exécuter des applications Aspire ?

Non. Malgré son nom, AddAzureAppServiceEnvironment ne fournit pas d'App Service Environment dans le niveau Isolé. Il crée une ressource d’environnement Aspire qui représente l’infrastructure d’hébergement des services d’applications pour votre application.

Lorsque vous appelez AddAzureAppServiceEnvironment, il provisionne :

  • Un plan Azure App Service (niveau Premium P0V3 sur Linux par défaut)
  • Un Azure Container Registry pour le stockage des images de conteneur
  • Identité managée affectée par l’utilisateur pour un accès sécurisé entre les services

Ce concept d’environnement Aspire regroupe vos ressources et fournit l’infrastructure nécessaire pour déployer vos applications Aspire sur Azure App Service.

Comment personnaliser le déploiement de mon service d'application ?

Vous pouvez personnaliser votre déploiement App Service en modifiant la configuration AppHost.cs. L’intégration d’Aspire Azure App Service offre plusieurs façons de personnaliser votre déploiement :

  • Configurer le plan App Service : ajuster le SKU, le niveau et les options de mise à l’échelle
  • Personnaliser les paramètres App Service : Ajouter des variables d’environnement, des chaînes de connexion et des paramètres d’application
  • Configurer l’infrastructure : modifier la mise en réseau, l’authentification et d’autres ressources Azure
  • Utiliser des ressources existantes : Se connecter à des plans App Service existants ou à d’autres ressources Azure

Pour plus d’informations, consultez Configurer une application Aspire pour Azure App Service.

Pour plus d’informations sur les charges de travail prises en charge et le comportement de déploiement des services applicatifs, consultez l’intégration de l’hébergement Azure App Service et Déployer sur Azure App Service.

Étapes suivantes

Vous avez déployé avec succès une application Aspire sur Azure App Service ! Voici quelques étapes à suivre pour explorer :

Explorer les fonctionnalités d’Azure App Service