Azure Developer CLI-Unterstützung für Azure-Bereitstellungsumgebungen
Die Azure Developer CLI (azd) bietet Unterstützung für Azure Deployment Environments. Eine Azure Deployment Environment (ADE) ist eine vorkonfigurierte Sammlung von Azure-Ressourcen, die in vordefinierten Abonnements bereitgestellt werden. Azure-Governance wird auf diese Abonnements basierend auf dem Typ der Umgebung angewendet, z. B. Sandkasten, Tests, Staging oder Produktion. Mit Azure-Bereitstellungsumgebungen können Sie Unternehmenssicherheitsrichtlinien erzwingen und einen kuratierten Satz vordefinierter Infrastruktur als Codevorlagen (IaC) bereitstellen.
Voraussetzungen
Stellen Sie sicher, dass Sie die folgenden Voraussetzungen für die Arbeit mit Azure-Bereitstellungsumgebungen mit azd
abgeschlossen haben:
Lokal installiert
azd
oder Zugriff aufazd
über Cloud Shell habenErstellt und konfiguriert eine Azure Deployment Environment mit einem Dev Center, Projekt und Vorlagenkatalog
Konfigurierte Umgebungstypen auf Dev Center-Ebene und Projektebene
Stellen Sie sicher, dass der Entwickler über die Rolle "Deployment Environments User" im Projekt verfügt.
Trinkgeld
Grundlegendes zu Azure-Bereitstellungsumgebungen ist für die Arbeit mit ihnen über
azd
unerlässlich.
Aktivieren der Unterstützung der Azure-Bereitstellungsumgebung
Sie können azd
so konfigurieren, dass Ressourcen in Ihren Bereitstellungsumgebungen bereitgestellt und bereitgestellt werden, indem Sie Standardbefehle wie azd up
oder azd provision
verwenden. Führen Sie den folgenden Befehl aus, um die Unterstützung für Azure-Bereitstellungsumgebungen zu aktivieren:
azd config set platform.type devcenter
Wenn platform.type
auf devcenter
festgelegt ist, werden alle azd
Remoteumgebungsstatus und die Bereitstellung neue Dev Center-Komponenten nutzen. Diese Konfiguration bedeutet auch, dass der infra
Ordner in Ihren lokalen Vorlagen effektiv ignoriert wird. Stattdessen verwendet azd
eine der Infrastrukturvorlagen, die im Dev Center-Katalog für die Ressourcenbereitstellung definiert sind.
Sie können auch die Dev Center-Unterstützung über den folgenden Befehl deaktivieren:
azd config unset platform
Arbeiten mit Azure-Bereitstellungsumgebungen
Wenn das Dev Center-Feature aktiviert ist, ändert sich das Standardverhalten einiger gängiger azd
Befehle, um mit diesen Remoteumgebungen zu arbeiten. Das Dev Center-Feature erweitert die Funktionalität, die standardmäßig azd
Remoteumgebung unterstützt.
azd init
Die azd init
Befehlsoberfläche im Dev Center-Modus zeigt alle azd kompatiblen ADE-Vorlagen für die Auswahl aus Ihrem konfigurierten Katalog an. Während des Init-Prozesses wird die azure.yaml
Datei automatisch aktualisiert, nachdem azd
den Vorlagencode geklont hat, um einen platform
Abschnitt mit der ausgewählten Konfiguration basierend auf der ausgewählten Vorlage einzuschließen. Die Konfiguration umfasst den Dev Center-Namen, den Katalog und die Umgebungsdefinition.
azd init
azd up
Der Befehl azd up
wird Ihre Anwendung in Azure-Bereitstellungsumgebungen packen, bereitstellen und bereitstellen. Die Bereitstellungsphase des befehls "azd up
" verwendet jedoch die kuratierten Infrastruktur-as-Code-Vorlagen in Ihrem Remote Dev Center, während die Bereitstellungsphase den Quellcode in Ihrer azd
-Vorlage bereitstellt. Während der Dev Center-Modus aktiviert ist, ignoriert azd
den infra
Ordner in Ihrer lokalen azd
-Vorlage und stellt nur Ressourcen mithilfe der Dev Center-Vorlagen bereit. Der Befehl fordert Sie außerdem auf, alle erforderlichen Werte anzugeben, z. B. das Azure Deployment Environment-Projekt oder den Umgebungstyp.
azd up
Azd-Vorlagenliste
Mit dem Befehl "azd template list
" werden die verfügbaren Infrastrukturvorlagen in Ihrem Dev Center-Katalog angezeigt, anstatt Vorlagen aus dem standardmäßigen AZD Awesome-Katalog anzuzeigen.
Kataloge eine Reihe kuratierter und genehmigter Infrastruktur-as-Code-Vorlagen bereitstellen, die Ihre Entwicklungsteams zum Erstellen von Umgebungen verwenden können.
azd template list
azd-Bereitstellung
Der Befehl azd provision
erstellt neue Dev Center-Umgebungen. Der Befehl fordert Sie zur Eingabe fehlender Werte auf, z. B. den Umgebungstyp oder das Projekt. Wenn der Befehl ausgeführt wird, wird die zugeordnete Infrastrukturvorlage verwendet, um den richtigen Satz von Azure-Ressourcen für diese Umgebung bereitzustellen. Während der Dev Center-Modus aktiviert ist, ignoriert azd
den infra
Ordner in Ihrer lokalen azd
-Vorlage und stellt nur Ressourcen mithilfe der Dev Center-Vorlagen bereit.
azd provision
azd env list
Der Befehl azd env list
zeigt dieselbe Liste der Umgebungen an, die im Entwicklerportal angezeigt werden.
azd env list
Kategorisieren von Ressourcen für Azure-Bereitstellungsumgebungen
azd
Bereitstellung für Azure-Bereitstellungsumgebungen basiert auf kuratierten Vorlagen aus dem Dev Center-Katalog. Vorlagen im Katalog können Tags für bereitgestellte Azure-Ressourcen zuweisen, mit deren Rahmen Sie Ihre App-Dienste in der datei azure.yaml
zuordnen können. Wenn die Vorlagen keine Tags zuweisen, können Sie dieses Problem auf eine von zwei Arten beheben:
Arbeiten Sie mit Ihrem Dev Center-Katalogadministrator zusammen, um sicherzustellen, dass die bereitgestellten Azure-Ressourcen Tags enthalten, um sie diensten zuzuordnen, die in Ihrer
azure.yaml
-Datei definiert sind.Geben Sie die
resourceName
in Ihrerazure.yaml
Datei an, anstatt Tags zu verwenden:services: api: project: ./src/api host: containerapp language: js resourceName: sample-api-containerapp web: project: ./src/web host: containerapp language: js resourceName: sample-web-containerapp
Konfigurieren von Dev Center-Einstellungen
Sie können azd
Einstellungen für Ihre Dev Center an mehreren Stellen definieren. Einstellungen werden von diesen Speicherorten kombiniert, um den endgültigen Satz von Konfigurationen in der folgenden Reihenfolge der Rangfolge zu erstellen:
- Umgebungsvariablen
- Azd-Umgebungskonfiguration
- Projektkonfiguration
- Benutzerkonfiguration
azd
fordert Sie automatisch zur Eingabe von Konfigurationswerten auf, die aus diesen Quellen fehlen. Jede dieser Konfigurationsoptionen ist in den folgenden Abschnitten beschrieben.
Umgebungsvariablen
Die folgenden Umgebungsvariablen werden von azd
ermittelt und verwendet:
- AZURE_DEVCENTER_NAME
- AZURE_DEVCENTER_PROJECT
- AZURE_DEVCENTER_CATALOG
- AZURE_DEVCENTER_ENVIRONMENT_DEFINITION
- AZURE_DEVCENTER_ENVIRONMENT_TYPE
- AZURE_DEVCENTER_ENVIRONMENT_USER
Definieren von Konfigurationen
Definieren Sie Konfigurationen für Ihre Dev Center im Bereich azd
Umgebung in .azure/<env>/config.json
Datei:
{
"platform": {
"config": {
"catalog": "SampleCatalog",
"environmentDefinition": "Todo",
"environmentType": "Dev",
"name": "sample-devcenter",
"Project": "SampleProject"
}
}
}
Projektumfang
Definieren Sie Konfigurationen für Ihre Dev Center im azd
Projektbereich im platform
Knoten der azure.yaml
Datei:
name: todo-nodejs-mongo-aca
metadata:
template: todo-nodejs-mongo-aca@0.0.1-beta
platform:
type: devcenter
config:
catalog: SampleCatalog
environmentDefinition: Todo
name: sample-devcenter
project: SampleProject
services:
api:
project: ./src/api
host: containerapp
language: js
web:
project: ./src/web
host: containerapp
language: js
Benutzerbereich
Definieren Sie Konfigurationen für Ihre Dev Center im Benutzerbereich in der datei ~/<user_profile>/.azd/config.json
:
{
"platform": {
"config": {
"catalog": "SampleCatalog",
"environmentDefinition": "Todo",
"environmentType": "Dev",
"name": "sample-devcenter",
"Project": "SampleProject"
}
}
}