Azure Developer CLI och Azure Deployment Environments
I den här artikeln får du lära dig mer om Azure Developer CLI (azd
) och hur det fungerar med Azure Deployment Environments (ADE) för att förenkla processen med att etablera programinfrastruktur och distribuera programkod till den nya infrastrukturen.
azd
är ett kommandoradsverktyg med öppen källkod som tillhandahåller utvecklarvänliga kommandon som mappar till viktiga steg i arbetsflödet. Du kan installera azd
lokalt på datorn eller använda den i andra miljöer.
Med ADE kan du skapa miljöer från en miljödefinition i en katalog som är kopplad till utvecklingscentret eller genom att använda ADE-utökningsmodellen för att köra distributioner. Genom att lägga till azd
kan du effektivisera etableringsprocessen för infrastruktur och distribuera kod till molnet.
Hur fungerar det azd
med ADE?
azd
fungerar med ADE så att du kan skapa miljöer där du arbetar.
Med ADE och azd
kan enskilda utvecklare som arbetar med unik infrastruktur och kod som de vill ladda upp till molnet skapa en miljö från en lokal mapp. De kan använda azd
för att etablera en miljö och distribuera sin kod sömlöst.
I stor skala kan du med hjälp av ADE och azd
tillsammans tillhandahålla ett sätt för utvecklare att skapa appinfrastruktur och kod. Ditt team kan skapa flera ADE-miljöer från samma azd
kompatibla miljödefinition och etablera kod till molnet på ett konsekvent sätt.
Förstå azd
mallar
Azure Developer CLI-kommandona är utformade för att fungera med standardiserade mallar. Varje mall är en kodlagringsplats som följer specifika fil- och mappkonventioner. Mallarna innehåller de tillgångar azd
som krävs för att etablera en Miljö för Azure-distributionsmiljö. När du kör ett kommando som azd up
använder verktyget malltillgångarna för att köra olika arbetsflödessteg, till exempel etablering eller distribution av resurser till Azure.
Följande diagram visar en typisk mallstruktur:
├── 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]
Alla azd
mallar innehåller följande tillgångar:
infra-mapp – Infra-mappen används inte i
azd
med ADE. Den innehåller hela Bicep- eller Terraform-infrastrukturen som kodfiler för mallenazd
. ADE tillhandahåller infrastrukturen som kodfiler för mallenazd
. Du behöver inte inkludera dessa filer i mallenazd
.azure.yaml-fil – en konfigurationsfil som definierar en eller flera tjänster i projektet och mappar dem till Azure-resurser för distribution. Du kan till exempel definiera en API-tjänst och en webbklientdelstjänst, var och en med attribut som mappar dem till olika Azure-resurser för distribution.
.azure-mapp – Innehåller viktiga Azure-konfigurationer och miljövariabler, till exempel platsen för att distribuera resurser eller annan prenumerationsinformation.
src-mapp – Innehåller all distributionsbar appkällkod. Vissa
azd
mallar tillhandahåller bara infrastrukturtillgångar och lämnar src-katalogen tom så att du kan lägga till din egen programkod.
De flesta azd
mallar kan också innehålla en eller flera av följande mappar:
.devcontainer-mappen – Gör att du kan konfigurera en Dev Container-miljö för ditt program. Den här vanliga metoden för utvecklingsmiljön som inte är specifik för
azd
..github-mapp – Innehåller CI/CD-arbetsflödesfilerna för GitHub Actions, som är ci/CD-standardprovidern för
azd
..azdo-mapp – Om du bestämmer dig för att använda Azure Pipelines för CI/CD definierar du arbetsflödeskonfigurationsfilerna i den här mappen.
azd
kompatibla kataloger
Azure Deployment Environments-kataloger består av miljödefinitioner: IaC-mallar som definierar de infrastrukturresurser som etableras för en distributionsmiljö. Azure Developer CLI använder miljödefinitioner i katalogen som är kopplad till utvecklingscentret för att etablera nya miljöer.
Azure Developer CLI fungerar med ARM-mallar som lagras i Azure Deployment Environments dev center-katalogen. Det stöder även andra IaC-mallar, till exempel Bicep och Terraform via ADE-utökningsmodellen. Information om hur du konfigurerar utökningsmodellen för ADE finns i Utökningsmodellen för Azure Deployment Environments.
För att stödja vissa Azure Compute-tjänster korrekt kräver Azure Developer CLI fler konfigurationsinställningar i IaC-mallen. Du måste till exempel tagga apptjänstvärdar med specifik information så att azd
du vet hur du hittar värdarna och distribuerar appen till dem.
Du kan se en lista över Azure-tjänster som stöds här: Azure-beräkningstjänster (värd) som stöds.
Gör din ADE-katalog kompatibel med azd
Om du vill aktivera dina utvecklingsteam för oss azd
med ADE måste du skapa en miljödefinition i katalogen som är kompatibel med azd
. Du kan skapa en ny azd
kompatibel miljödefinition, eller så kan du använda en befintlig miljödefinition från katalogen Azure Deployment Environments dev center. Om du väljer att använda en befintlig miljödefinition måste du göra några ändringar för att göra den kompatibel med azd
.
Exempel på några av ändringarna är:
- Om du ändrar en befintlig
azd
mall tar du bortinfra
mappen. ADE använder följande filer för att skapa infrastrukturen:- ARM-mall (azuredeploy.json.)
- Konfigurationsfil som definierar parametrar (environment.yaml eller manifest.yaml)
- Tagga resurser i azure.yaml med specifik information så att
azd
du vet hur du hittar värdarna och distribuerar appen till dem.- Läs mer om taggning av resurser för Azure-distributionsmiljöer.
- Läs mer om Azure Developer CLI:s azure.yaml-schema.
Mer information om hur du gör din ADE-miljödefinition kompatibel med azd
finns i Gör projektet kompatibelt med Azure Developer CLI.
Aktivera azd
stöd i ADE
Om du vill aktivera azd
support med ADE måste du ange platform.type
till devcenter. Den här konfigurationen gör det möjligt azd
att använda nya dev center-komponenter för fjärrmiljötillstånd och etablering, och innebär att infra-mappen i dina mallar ignoreras.
azd
I stället använder du en av de infrastrukturmallar som definierats i utvecklingscentrets katalog för resursetablering.
Om du vill aktivera azd
stöd kör du följande kommando:
azd config set platform.type devcenter
Utforska azd
kommandon
När dev center-funktionen är aktiverad ändras standardbeteendet för vissa vanliga azd
kommandon för att fungera med dessa fjärrmiljöer. Mer information finns i Arbeta med Azure-distributionsmiljöer.