Schnellstart: Bereitstellen einer Aspire-App für Azure App Service

In dieser Schnellstartanleitung erfahren Sie, wie Sie Ihre erste Aspire-App in Azure App Service erstellen und bereitstellen. Azure App Service bietet eine vollständig verwaltete Plattform zum Hosten von Web-Apps mit integrierter Infrastrukturwartung, Sicherheitspatching und Skalierung.

Sie können diesen gesamten Quickstart in Ihrem Browser abschließen, indem Sie den offiziellen Aspire-Entwicklungscontainer für GitHub Codespaces verwenden. Am Ende haben Sie eine ausgeführte Aspire-App für Azure App Service bereitgestellt.

Important

Die Aspire-Azure-App-Service-Integration ist derzeit als Vorschau verfügbar.

Dieser Quickstart verwendet ein C#-, AppHost- und .NET-Projekt. Aspire unterstützt außerdem TypeScript AppHosts und polyglotte Anwendungsressourcen. Weitere Informationen finden Sie unter Aspire AppHost und Was es Neues in Aspire 13.5 gibt.

Voraussetzungen

Erstellen einer Aspire Starter-App in einem GitHub-Codespace

  1. Erstellen Sie ein Repository aus der Aspire-Entwicklungscontainer-Vorlage.

  2. Im neuen Repository wählen Sie Code>Codespaces>Codespace für main erstellen.

    Dein Browser öffnet einen Codespace mit Visual Studio Code. Die Umgebung enthält die Aspire-CLI und ein vertrauenswürdiges lokales HTTPS-Entwicklungszertifikat.

    Weitere Informationen finden Sie unter Develop with Aspire using GitHub Codespaces.

  3. Im Terminal erstellen Sie eine neue Aspire-App:

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

    Der Befehl erstellt ein neues Verzeichnis mit dem Namen aspire-starter, das eine vollständige Aspire-Lösung beinhaltet, einschließlich:

    • Ein AppHost-Projekt für die Orchestrierung
    • Ein ServiceDefaults-Projekt für freigegebene Konfigurationen
    • Beispiel-API- und Web-Frontend-Projekte
  4. Navigieren Sie in das Projektverzeichnis:

    cd aspire-starter
    

Hinzufügen der Azure App Service-Integration

Konfigurieren Sie Ihre Aspire-App für die Bereitstellung in Azure App Service.

  1. Füge die Azure App Service Hosting-Integration hinzu:

    aspire add Aspire.Hosting.Azure.AppService
    

    Der aspire add Befehl erkennt das AppHost-Projekt und fügt das Aspire.Hosting.Azure.AppService Paket hinzu. Weitere Informationen finden Sie unter aspire add.

  2. Öffnen Sie den aspire-starter/aspire-starter/AppHost/AppHost.cs.

  3. Fügen Sie nach der CreateBuilder Zeile eine Azure App Service-Umgebung hinzu:

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

    Weitere Informationen finden Sie unter Benötige ich eine App Service-Umgebung zum Ausführen von Aspire-Apps?.

  4. .WithExternalHttpEndpoints()Zum Projekt hinzufügenapiservice Ihre vollständige apiservice Ressource sollte wie folgt aussehen:

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

    Note

    App Service unterstützt nur externe HTTP- und HTTPS-Endpunkte sowie einen eigenen Zielport für jede bereitgestellte App. Die Starter-Vorlage stellt bereits den Frontend-Endpunkt frei. Weitere Informationen finden Sie unter Integration von Azure App Service Hosting.

  5. Führe im Stammverzeichnis der Lösung aspire run aus, um den AppHost lokal zu überprüfen.

    Ein Screenshot des aktuellen Aspire-Dashboards, das die App Service-Umgebung und Beispiel-App-Ressourcen zeigt.

In Azure bereitstellen

  1. Melden Sie sich bei Azure an:

    az login
    
  2. Bereitstellen der Anwendung:

    aspire deploy
    

    Wenn du aufgefordert wirst, wähle dein Azure-Abonnement, deinen Standort und deine Ressourcengruppe aus. Aspire speichert die ausgewählten Bereitstellungseinstellungen als AppHost-Benutzergeheimnisse, sodass Sie sie wiederverwenden können.

    Der aspire deploy Befehl führt die folgenden Aktionen basierend auf Ihrem AppHost.cs Code aus:

    • Erstellt oder wiederverwendet die ausgewählte Ressourcengruppe
    • Erstellt einen Azure App Service Plan
    • Erstellt eine Azure-Containerregistrierung
    • Erstellt zwei App Service-Web-Apps (eine für die API, eine für das Frontend)
    • Erstellt eine verwaltete Aspire Dashboard-Ressource
    • Erstellt und containerisiert Ihre Anwendungen
    • Verschiebt die Container in die Azure-Containerregistrierung.
    • Stellt die Container auf App Service bereit.

    Weitere Informationen zu Bereitstellungseinstellungen und Authentifizierung finden Sie unter Deploy to Azure.

  3. Nach Abschluss der Bereitstellung zeigt der Befehl die Endpunkt-URLs der bereitgestellten Dienste und des Aspire-Dashboards an.

    Weitere Informationen zum Deployment-Flow finden Sie unter Deploy to Azure App Service.

Durchsuchen Ihrer Aspire-App

  1. Suchen Sie in der Bereitstellungsausgabe die URL für den webfrontend Dienst. Es sieht ähnlich aus wie folgt:

    webfrontend: https://webfrontend-xxxxx.azurewebsites.net
    
  2. Kopieren Sie die URL und öffnen Sie sie in einem neuen Tab.

    Sie sehen die Aspire Starter-App, die in Azure App Service ausgeführt wird. Das Web-Frontend kommuniziert mit dem API-Dienst und veranschaulicht die verteilte Architektur.

  3. Versuchen Sie, durch die App zu navigieren, um zu überprüfen, ob sie ordnungsgemäß funktioniert.

  4. Um das Aspire Dashboard anzuzeigen, suchen Sie die Aspire Dashboard-URL in der Bereitstellungsausgabe, und öffnen Sie sie auf einer neuen Browserregisterkarte.

Anzeigen von Bereitstellungsdetails im Azure-Portal

  1. Navigieren Sie zum Azure-Portal.

  2. Geben Sie in der Suchleiste Ressourcengruppen ein, und wählen Sie "Ressourcengruppen" aus.

  3. Finde und wähle die Ressourcengruppe aus, die du während gewählt hast aspire deploy.

    Ein Screenshot der Ressourcengruppenansicht einer von Aspire bereitgestellten Aspire-App.

    Die folgenden Ressourcen sollten angezeigt werden:

    • App Service Plan: Die Hostinginfrastruktur
    • App-Dienste: Ihre webfrontend- und apiservice-Apps
    • Aspire Dashboard: Eine verwaltete Azure-Ressource, die durch rollenbasierte Zugriffskontrolle (RBAC) geschützt ist.
    • Containerregistrierung: Speichert Ihre Containerimages
    • Benutzer zugewiesene Identität: Bietet sicheren Zugriff zwischen Diensten

Bereinigen von Ressourcen

Wenn Sie die Azure-Ressourcen nicht mehr benötigen, löschen Sie sie, um Gebühren zu vermeiden.

  1. Führen Sie in Ihrem Codespace-Terminal Folgendes aus:

    aspire destroy
    
  2. Wenn du aufgefordert wirst, bestätige, dass du die bereitgestellte Umgebung zerstören möchtest.

Der Befehl führt den Destroy-Schritt aus, der von der App Service-Umgebung registriert wird. Weitere Informationen finden Sie unter aspire destroy.

Caution

aspire destroy löscht die gesamte Ressourcengruppe, einschließlich Ressourcen, die nicht von Aspire erstellt wurden. Überprüfen Sie die Zielgruppen, bevor Sie bestätigen.

Häufig gestellte Fragen

Benötige ich eine App Service-Umgebung zum Ausführen von Aspire-Apps?

No. Trotz ihres Namens stellt AddAzureAppServiceEnvironment keine App Service-Umgebung im Tarif „Isolated“ bereit. Es erstellt eine Aspire-Umgebungsressource, die die App Service Hosting-Infrastruktur für Ihre Anwendung darstellt.

Wenn Sie AddAzureAppServiceEnvironment aufrufen, wird Folgendes bereitgestellt:

  • Ein Azure App Service Plan (Premium P0V3-Stufe unter Linux standardmäßig)
  • Eine Azure-Containerregistrierung zum Speichern von Containerimages
  • Eine vom Benutzer zugewiesene verwaltete Identität für den sicheren Zugriff zwischen Diensten

Dieses Aspire-Umgebungskonzept gruppiert Ihre Ressourcen und stellt die Infrastruktur bereit, die erforderlich ist, um Ihre Aspire-Apps auf Azure App Service bereitzustellen.

Wie kann ich meine App Service-Bereitstellung anpassen?

Sie können Ihre App Service-Bereitstellung anpassen, indem Sie die AppHost.cs Konfiguration ändern. Die Aspire Azure App Service-Integration bietet verschiedene Möglichkeiten, Ihre Bereitstellung anzupassen:

  • Konfigurieren des App-Serviceplans: Anpassen von SKU-, Ebenen- und Skalierungsoptionen
  • Anpassen von App Service-Einstellungen: Hinzufügen von Umgebungsvariablen, Verbindungszeichenfolgen und App-Einstellungen
  • Konfigurieren der Infrastruktur: Ändern von Netzwerk-, Authentifizierungs- und anderen Azure-Ressourcen
  • Verwenden vorhandener Ressourcen: Herstellen einer Verbindung mit vorhandenen App Service-Plänen oder anderen Azure-Ressourcen

Weitere Informationen finden Sie unter Configure an Aspire app for Azure App Service.

Weitere Informationen zu unterstützten App-Service-Workloads und Bereitstellungsverhalten finden Sie unter Azure App Service Hosting Integration und Deploy to Azure App Service.

Nächste Schritte

Sie haben erfolgreich eine Aspire-App für Azure App Service bereitgestellt! Hier sind einige weitere Schritte, die Sie erkunden sollten:

Erkunden Sie die Azure App Service-Features