Übersicht über Azure Developer CLI-Vorlagen

Azure Developer CLI-Vorlagen (azd) sind Standardcoderepositorys, die Beispielanwendungscode sowie azd-Dateien für Konfiguration und Infrastruktur enthalten. Mithilfe von azd-Vorlagen können Sie Azure-Ressourcen bereitstellen, Ihre Anwendung bereitstellen, CI/CD-Pipelines konfigurieren und vieles mehr. Sie können entweder eigene Vorlagen erstellen oder mit einer vorhandenen Vorlage aus einem Vorlagen-Repository wie Awesome AZD beginnen. In diesem Artikel sind folgende Konzepte näher erläutert:

  • Bereitstellen von App-Ressourcen mithilfe von azd-Vorlagen
  • Struktur von azd-Vorlagen
  • Entscheiden, ob eine vorhandene Vorlage verwendet oder eine Vorlage erstellt werden soll
  • Erkunden vorhandener azd-Startvorlagen

Gründe für die Verwendung von Azure Developer CLI-Vorlagen

Entwickler sehen sich häufig mit zahlreichen zeitaufwändigen und komplexen Aufgaben konfrontiert, wenn sie ordnungsgemäß konzipierte und konfigurierte Umgebungs-Apps für die Cloud erstellen. Teams müssen in diesen Umgebungen viele verschiedene Aspekte berücksichtigen, z. B. die Erstellung von Ressourcen, die Anwendung von Konfigurationen, die Einrichtung von Überwachung und Protokollierung, die Erstellung von CI/CD-Pipelines und andere Aufgaben. azd-Vorlagen reduzieren und optimieren diese Verantwortlichkeiten, um Entwicklern auf ihrem Weg von der lokalen Entwicklung zu einer erfolgreich bereitgestellten App in Azure zu unterstützen.

Angenommen, Sie arbeiten bei einem Unternehmen, das eine Ticketverwaltungs- und Kundenkommunikationsplattform betreibt, die die folgenden Azure-Ressourcen erfordert:

  • Zwei App Service-Instanzen und einen App Service-Plan zum Hosten einer Front-End-Web-App und Back-End-API
  • Eine Key Vault-Instanz zum Speichern sicherer App-Geheimnisse
  • Eine Cosmos DB-Datenbank zum dauerhaften Speichern von App-Daten
  • Azure Monitor-Ressourcen wie Application Insights-Dashboards
  • Eine Service Bus-Instanz zum Verwalten von skalierbarem Messaging
  • CI/CD-Pipelines, um sicherzustellen, dass Änderungen zuverlässig über einen automatisierten, wiederholbaren Prozess bereitgestellt werden.

Anstatt von Anfang an zu beginnen, können Sie mit azd vorhandene Architekturvorlagen nutzen, die die meisten Ressourcen für Sie bereitstellen. Das Entwicklungsteam kann sich dann auf die Erstellung der App und kleinere Anpassungen der Vorlagenarchitektur konzentrieren.

Funktionsweise von Azure Developer CLI-Vorlagen

Azure Developer-CLI-Vorlagen sind für die Verwendung mit azd-Befehlen wie azd init und azd up konzipiert. Die Vorlagen umfassen Konfigurations- und IaC-Dateien (Infrastructure-as-Code), die von den Befehlen verwendet werden, um Aufgaben wie die Bereitstellung von Azure-Ressourcen auszuführen und den App-Code für sie bereitzustellen.

Ein typischer azd-Workflow, bei dem eine vorhandene Vorlage verwendet wird, umfasst beispielsweise die folgenden Schritte:

  1. Führen Sie den Befehl azd init mit dem Parameter --template aus, um eine vorhandene Vorlage von GitHub zu klonen.

    azd init --template todo-nodejs-mongo
    
  2. Führen Sie den Befehl azd auth login aus, um sich bei Ihrem Azure-Abonnement zu authentifizieren.

    azd auth login
    
  3. Ausführen des Befehls azd up, um die Vorlagenressource in Azure bereitzustellen. Der Befehl azd up nutzt die Konfigurations- und IaC-Dateien (Infrastructure-as-Code) in Ihrer Vorlage, um Azure-Ressourcen bereitzustellen und Ihre Anwendung für diese Ressourcen bereitzustellen.

    azd up
    
  4. Sobald Ihre Umgebung in Azure eingerichtet ist, können Sie die Anwendungsfeatures oder Azure-Ressourcenvorlagen lokal ändern und dann azd up erneut ausführen, um Ihre Änderungen bereitzustellen.

Grundlegendes zur Azure Developer CLI-Vorlagenstruktur

Alle azd-Vorlagen verwenden eine ähnliche Dateistruktur basierend auf azd-Konventionen. Die mindestens erforderlichen Ressourcen umfassen in der Regel Folgendes:

  • infra-Ordner: Enthält die alle Bicep- bzw. Terraform-Infrastructure-as-Code-Dateien für die azd-Vorlage. azd führt diese Dateien aus, um die Azure-Ressourcen zu erstellen, die zum Hosten Ihrer App erforderlich sind.

  • azure.yaml-Datei: Eine Konfigurationsdatei, die einen oder mehrere Dienste in einem Projekt definiert und Azure-Ressourcen, die im Ordner infra definiert sind, für die Bereitstellung zuordnet. So können Sie beispielsweise einen API-Dienst und einen Front-End-Webdienst definieren und verschiedenen Azure-Ressourcen für die Bereitstellung zuordnen.

  • .azure-Ordner: Enthält wichtige Azure-Konfigurationen und -Umgebungsvariablen, z. B. den Speicherort für die Bereitstellung von Ressourcen oder andere Abonnementinformationen.

  • src-Ordner: Enthält den gesamten bereitstellungsfähigen App-Quellcode. Einige azd-Vorlagen schließen den src-Ordner aus und stellen nur Infrastrukturressourcen bereit, damit Sie eigenen Anwendungscode hinzufügen können.

    Hinweis

    Vorlagen, die den src-Ordner ausschließen, sind in der Regel als Startvorlagen für die Infrastruktur konzipiert.

azd-Vorlagen enthalten optional auch einen oder mehrere der folgenden Ordner:

  • .github-Ordner: Enthält die CI/CD-Workflowdateien für GitHub Actions, den CI/CD-Standardanbieter für azd.
  • .azdo-Ordner: Wenn Sie Azure Pipelines für CI/CD verwenden möchten, definieren Sie die Workflowkonfigurationsdateien in diesem Ordner.
  • .devcontainer-Ordner: Ermöglicht die Einrichtung einer Dev Container-Umgebung für Ihre Anwendung.

Eine allgemeine azd-Vorlage kann beispielsweise der folgenden Ordnerstruktur entsprechen:

Screenshot: Azure Developer CLI-Vorlagenstruktur

Beginnen mit einer vorhandenen Vorlage oder Erstellen einer eigenen Vorlage

Es gibt zwei Standardansätze zur Verwendung von azd-Vorlagen:

  • Beginnen Sie mit einer vorhandenen azd-Vorlage.
    • Dies ist eine gute Wahl, wenn Sie erste Schritte mit azd ausführen oder eine Vorlage suchen, um eine neue App mit einer ähnlichen Architektur und ähnlichen Frameworks zu erstellen.
  • Konvertieren Sie ein vorhandenes Projekt in eine azd-Vorlage.
    • Dies ist eine gute Wahl, wenn Sie bereits über eine vorhandene App verfügen, sie aber mit azd-Funktionen kompatibel machen möchten.

Die folgenden Abschnitte enthalten mehr Informationen zu diesen beiden Optionen.

Beginnen mit einer vorhandenen Vorlage

Eine breite Auswahl an azd-Vorlagen steht im Vorlagenkatalog awesome-azd zur Verfügung. Diese Vorlagen stellen Infrastruktur- und Anwendungscode für verschiedene Entwicklungsszenarien, Sprachframeworks und Azure-Dienste bereit. Wenn Sie eine Vorlage finden, die sich für Ihren lokalen Anwendungsstapel oder die gewünschte Architektur eignet, können Sie den Vorlagencode durch eigenen Code erweitern und ersetzen.

Die folgenden azd-Vorlagen bieten z. B. Ausgangspunkte für allgemeine App-Architekturen und -Frameworks:

Vorlage App-Host Technologiestapel
React-Web-App mit C#-API und MongoDB in Azure Azure App Service Azure Cosmos DB for NoSQL, Bicep
React-Web-App mit C# API und SQL-Datenbank in Azure Azure App Service Azure SQL-Datenbank, Bicep
Statische React-Web-App + Funktionen mit C#-API und SQL-Datenbank in Azure Azure Static Web Apps, Azure Functions Azure SQL-Datenbank, Bicep

Erstellen einer neuen azd-Vorlage für Ihre App

Sie können eine vorhandene App auch in eine azd-Vorlage konvertieren, um das Repository mit Bereitstellungsfunktionen zu verbessern. Dieser Ansatz ermöglicht die meiste Kontrolle und erzeugt eine wiederverwendbare Lösung für zukünftige Entwicklungsarbeiten an der App. Die allgemeinen Schritte zur Erstellung einer eigenen Vorlage sind folgende:

  • Initialisieren der Projektvorlage mit azd init
  • Erstellen Sie die Bicep- oder Terraform-IaC-Dateien (Infrastructure-as-Code) im Ordner infra.
  • Aktualisieren der azure.yaml-Datei, um die App-Dienste mit den Azure-Ressourcen zu verknüpfen
  • Bereitstellen mit azd up

Die folgenden Ressourcen enthalten weitere Informationen zum Erstellen eigener Vorlagen:

Richtlinien für die Verwendung von azd-Vorlagen

Beachten Sie, dass jede Vorlage, die Sie mit Azure Developer CLI verwenden, von seinem jeweiligen Besitzer (möglicherweise Microsoft) gemäß der Vereinbarung lizenziert wird, die die Vorlage begleitet. Es liegt in Ihrer Verantwortung, zu bestimmen, welche Lizenz für die jeweilige von Ihnen verwendete Vorlage gilt.

Microsoft ist nicht für Vorlagen verantwortlich, die nicht von Microsoft stammen, und überprüft diese Vorlagen nicht auf Sicherheits-, Datenschutz-, Kompatibilitäts- oder Leistungsprobleme. Die Vorlagen, die Sie mit Azure Developer CLI verwenden, einschließlich der von Microsoft bereitgestellten Vorlagen, werden von keinem Microsoft-Supportprogramm oder -Dienst unterstützt. Alle von Microsoft bereitgestellten Vorlagen werden „wie besehen“ jegliche Garantie bereitgestellt.

Nächste Schritte