Freigeben über


Azure Developer CLI und Azure Deployment Environments

In diesem Artikel erfahren Sie mehr über die Azure Developer CLI (azd) und wie sie mit Azure Deployment Environments (ADE) zusammenarbeitet, um den Prozess der Bereitstellung von Anwendungsinfrastruktur und das Bereitstellen von Anwendungscode in der neuen Infrastruktur zu vereinfachen.

azd ist ein Open-Source-Befehlszeilentool, das entwicklerfreundliche Befehle bereitstellt, die wichtigen Phasen in Ihrem Workflow zugeordnet sind. Sie können azd lokal auf Ihrem Computer installieren oder in anderen Umgebungen verwenden.

Mit ADE können Sie Umgebungen aus einer Umgebungsdefinition in einem Katalog erstellen, der ihrem Dev Center zugeordnet ist, oder sie verwenden das ADE-Erweiterbarkeitsmodell zum Ausführen von Bereitstellungen. Indem Sie azd hinzufügen, können Sie den Prozess der Bereitstellung von Infrastruktur und das Bereitstellen von Code in der Cloud optimieren.

Wie funktioniert azd mit ADE?

azd arbeitet mit ADE zusammen, damit Sie Umgebungen erstellen können, in denen Sie arbeiten.

Mit ADE und azd können einzelne Entwickler, die mit eindeutiger Infrastruktur und Code arbeiten, die sie in die Cloud hochladen möchten, eine Umgebung aus einem lokalen Ordner erstellen. Sie können azd verwenden, um eine Umgebung und darin ihren Code nahtlos bereitzustellen.

Durch die gemeinsame Verwendung von ADE und azd können Sie Entwicklern die Möglichkeit bieten, App-Infrastruktur und Code zu erstellen. Ihr Team kann mehrere ADE-Umgebungen aus derselben kompatiblen azd-Umgebungsdefinition erstellen und Code auf konsistente Weise in der Cloud bereitstellen.

Grundlegendes zu azd-Vorlagen

Die Azure Developer CLI-Befehle sind für die Arbeit mit standardisierten Vorlagen konzipiert. Jede Vorlage ist ein Coderepository, das bestimmte Datei- und Ordnerkonventionen erfüllt. Die Vorlagen enthalten die Ressourcen, die azd benötigt, um eine Azure Deployment Environment-Umgebung bereitzustellen. Wenn Sie einen Befehl wie azd up ausführen, verwendet das Tool die Vorlagenressourcen, um verschiedene Workflowschritte auszuführen, z. B. Bereitstellen der Ressourcen in Azure.

Das folgende Diagramm zeigt eine typische Vorlagenstruktur:

├── infra                                        [ Contains infrastructure as code files ]
├── .azdo                                        [ Configures an Azure Pipeline ]
├── .devcontainer                                [ For DevContainer ]
├── .github                                      [ Configures a GitHub workflow ]
├── .vscode                                      [ VS Code workspace configurations ]
├── .azure                                       [ Stores Azure configurations and environment variables ]
├── src                                          [ Contains all of the deployable app source code ]
└── azure.yaml                                   [ Describes the app and type of Azure resources]

Alle azd-Vorlagen enthalten die folgenden Ressourcen:

  • Infrastrukturordner: Der Infrastrukturordner wird in azd mit ADE nicht verwendet. Es enthält alle Bicep- oder Terraform-Infrastruktur als Codedateien für die azd-Vorlage. ADE stellt die Infrastruktur als Codedateien für die azd-Vorlage bereit. Sie müssen diese Dateien nicht in Ihre azd-Vorlage einschließen.

  • Azure.yaml-Datei: Eine Konfigurationsdatei, die einen oder mehrere Dienste in Ihrem Projekt definiert und sie Azure-Ressourcen für die Bereitstellung zuordnet. So können Sie beispielsweise einen API-Dienst und einen Front-End-Webdienst jeweils mit Attributen definieren, mit denen die beiden Dienste verschiedenen Azure-Ressourcen für die Bereitstellung zugeordnet werden.

  • .azure-Ordner: Enthält wichtige Azure-Konfigurationen und Umgebungsvariablen, z. B. den Speicherort zum Bereitstellen von Ressourcen oder anderen Abonnementinformationen.

  • src-Ordner: Enthält den gesamten bereitgestellten App-Quellcode. Einige azd-Vorlagen stellen nur Infrastrukturressourcen bereit und lassen das src-Verzeichnis leer, damit Sie Ihren eigenen Anwendungscode hinzufügen können.

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

  • .devcontainer-Ordner: Ermöglicht Ihnen das Einrichten einer Dev Container-Umgebung für Ihre Anwendung. Dies ist ein gängiger Ansatz für eine Entwicklungsumgebung, der nicht für azd spezifisch ist.

  • .github-Ordner: Enthält die CI/CD-Workflowdateien für GitHub Actions, den standardmäßigen CI/CD-Anbieter für azd.

  • .azdo-Ordner: Wenn Sie Azure Pipelines für CI/CD verwenden möchten, definieren Sie die Workflowkonfigurationsdateien in diesem Ordner.

azd-kompatible Kataloge

Azure Deployment Environments-Kataloge bestehen aus Umgebungsdefinitionen: IaC-Vorlagen, die die Infrastrukturressourcen definieren, die für eine Bereitstellungsumgebung bereitgestellt werden. Azure Developer CLI verwendet Umgebungsdefinitionen im Katalog, der im Dev Center angefügt ist, um neue Umgebungen bereitzustellen.

Azure Developer CLI funktioniert mit ARM-Vorlagen, die im Dev Center-Katalog von Azure Deployment Environments gespeichert sind. Sie unterstützt auch andere IaC-Vorlagen über das ADE-Erweiterbarkeitsmodell, z. B. Bicep und Terraform. Informationen zum Konfigurieren des ADE-Erweiterbarkeitsmodells finden Sie unter Azure Deployment Environments-Erweiterbarkeitsmodell.

Um bestimmte Azure Compute-Dienste ordnungsgemäß zu unterstützen, erfordert die Azure Developer CLI weitere Konfigurationseinstellungen in der IaC-Vorlage. So müssen Sie beispielsweise App-Diensthosts mit bestimmten Informationen kennzeichnen, damit azd weiß, wie die Hosts zu finden sind und die App auf ihnen bereitgestellt werden kann.

Hier finden Sie eine Liste der unterstützten Azure-Dienste: Unterstützte Azure Compute-Dienste (Host).

Machen Sie Ihren ADE-Katalog kompatibel mit azd

Damit Ihre Entwicklungsteams azd mit ADE verwenden können, müssen Sie eine Umgebungsdefinition in Ihrem Katalog erstellen, die mit azd kompatibel ist. Sie können eine neue azd-kompatible Umgebungsdefinition erstellen oder eine vorhandene Umgebungsdefinition aus dem Dev Center-Katalog der Azure Deployment Environments verwenden. Wenn Sie sich für die Verwendung einer vorhandenen Umgebungsdefinition entscheiden, müssen Sie einige Änderungen vornehmen, um sie mit azd kompatibel zu machen.

Die Änderungen umfassen Folgendes:

  • Wenn Sie eine vorhandene azd-Vorlage ändern, entfernen Sie den Ordner infra. ADE verwendet die folgenden Dateien zum Erstellen der Infrastruktur:
    • ARM-Vorlage (azuredeploy.json.)
    • Konfigurationsdatei, die Parameter definiert (environment.yaml oder manifest.yaml)
  • Taggen Sie Ressourcen in azure.yaml mit spezifischen Informationen, damit azd weiß, wie die Hosts zu finden sind und die App auf ihnen bereitgestellt werden kann.

Weitere Informationen dazu, wie Sie Ihre ADE-Umgebungsdefinition mit azd kompatibel machen, finden Sie unter Machen Sie Ihr Projekt kompatibel mit Azure Developer CLI.

Aktivieren der azd-Unterstützung in ADE

Um azd-Unterstützung mit ADE zu aktivieren, müssen Sie die platform.type auf devcenter festlegen. Mit dieser Konfiguration kann azd neue Dev Center-Komponenten für den Remoteumgebungsstatus und die Bereitstellung verwenden. Das bedeutet, dass der Infrastrukturordner in Ihren Vorlagen effektiv ignoriert wird. azd verwendet hingegen eine der Infrastrukturvorlagen, die im Dev Center-Katalog für die Ressourcenbereitstellung definiert sind.

Führen Sie die folgenden Befehle aus, um die azd-Unterstützung zu aktivieren:

 azd config set platform.type devcenter

Erkunden der azd-Befehle

Wenn das Dev Center-Feature aktiviert ist, ändert sich das Standardverhalten einiger gängiger azd-Befehle, um mit diesen Remoteumgebungen zu arbeiten. Weitere Informationen finden Sie unter Arbeiten mit Azure Deployment Environments.