Dela via


Cli-stöd för Azure Developer för Azure-distributionsmiljöer

Azure Developer CLI (azd) ger stöd för Azure Deployment Environments. En Azure Deployment Environment (ADE) är en förkonfigurerad samling Azure-resurser som distribuerats i fördefinierade prenumerationer. Azure-styrning tillämpas på dessa prenumerationer baserat på typen av miljö, till exempel sandbox-miljö, testning, mellanlagring eller produktion. Med Azure Deployment Environments kan du tillämpa företagssäkerhetsprinciper och tillhandahålla en kuraterad uppsättning fördefinierade IaC-mallar (infrastruktur som kod).

Förutsättningar

Kontrollera att du har slutfört följande krav för att arbeta med Azure-distributionsmiljöer med hjälp av azd:

Aktivera stöd för Azure Deployment Environment

Du kan konfigurera azd att etablera och distribuera resurser till dina distributionsmiljöer med hjälp av standardkommandon som azd up eller azd provision. Om du vill aktivera stöd för Azure Deployment Environments kör du följande kommando:

azd config set platform.type devcenter

När platform.type är inställt på devcenteranvänder alla azd fjärrmiljötillstånd och etablering nya dev center-komponenter. Den här konfigurationen innebär också att mappen infra i dina lokala mallar i praktiken ignoreras. I stället använder azd en av de infrastrukturmallar som definierats i utvecklingscentrets katalog för resursetablering.

Du kan också inaktivera dev center-stöd via följande kommando:

azd config unset platform

Arbeta med Azure-distributionsmiljöer

När dev center-funktionen är aktiverad ändras standardbeteendet för vissa vanliga azd kommandon för att fungera med dessa fjärrmiljöer. Dev Center-funktionen utökar funktioner som tillhandahålls av standard-azdfjärrmiljöstöd.

azd init

I azd init kommandoupplevelse i utvecklingscenterläge visas alla azd-kompatibla ADE-mallar för val från den konfigurerade katalogen. När azd klonar mallkoden under init-processen uppdateras azure.yaml-filen automatiskt så att den innehåller ett platform avsnitt med den valda konfigurationen baserat på den mall som valdes. Konfigurationen innehåller utvecklingscentrets namn, katalog och miljödefinition.

azd init

azd up

Kommandot azd up paketera, etablera och distribuera ditt program till Azure Deployment Environments. Etableringssteget för azd up-kommandot använder dock de utvalda mallarna infrastruktur som kod i fjärrutvecklingscentret, medan distributionssteget distribuerar källkoden i din azd-mall. När utvecklingscenterläget är aktiverat ignorerar azd mappen infra i mallen för lokala azd och etablerar endast resurser med hjälp av dev center-mallarna. Kommandot uppmanar dig också att ange nödvändiga värden, till exempel projektet Azure Deployment Environment eller miljötypen.

azd up

azd template list

Kommandot azd template list visar tillgängliga infrastrukturmallar i utvecklingscentrets katalog i stället för att visa mallar från standardgalleriet AZD Awesome. Kataloger tillhandahålla en uppsättning utvalda och godkända mallar för infrastruktur som kod som utvecklingsteamen kan använda för att skapa miljöer.

azd template list

En skärmbild som visar det uppdaterade mallgalleriet.

azd provision

Kommandot azd provision skapar nya dev center-miljöer. Kommandot uppmanar dig att ange eventuella värden som saknas, till exempel miljötypen eller projektet. När kommandot körs använder det den associerade infrastrukturmallen för att etablera rätt uppsättning Azure-resurser för den miljön. När utvecklingscenterläget är aktiverat ignorerar azd mappen infra i mallen för lokala azd och etablerar endast resurser med hjälp av dev center-mallarna.

azd provision

azd env list

Kommandot azd env list visar samma lista över miljöer som visas i utvecklarportalen.

azd env list

Tagga resurser för Azure-distributionsmiljöer

azd etablering för Azure Deployment Environments förlitar sig på utvalda mallar från dev center-katalogen. Mallar i katalogen kanske eller kanske inte tilldelar taggar till etablerade Azure-resurser som du kan associera dina apptjänster med i filen azure.yaml. Om mallarna inte tilldelar taggar kan du åtgärda problemet på något av två sätt:

  • Samarbeta med utvecklingscentrets katalogadministratör för att se till att de etablerade Azure-resurserna innehåller taggar för att associera dem med tjänster som definierats i din azure.yaml-fil.

  • Ange resourceName i filen azure.yaml i stället för att använda taggar:

    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
    

Konfigurera inställningar för dev center

Du kan definiera azd inställningar för dina utvecklingscenter på flera platser. Inställningarna kombineras från dessa platser för att skapa den sista uppsättningen konfigurationer i följande prioritetsordning:

  1. Miljövariabler
  2. Azd-miljökonfiguration
  3. Projektkonfiguration
  4. Användarkonfiguration

azd uppmanar dig automatiskt att ange eventuella konfigurationsvärden som saknas från dessa källor. Vart och ett av dessa konfigurationsalternativ beskrivs i följande avsnitt.

Miljövariabler

Följande miljövariabler identifieras och används av azd:

  • AZURE_DEVCENTER_NAME
  • AZURE_DEVCENTER_PROJECT
  • AZURE_DEVCENTER_CATALOG
  • AZURE_DEVCENTER_ENVIRONMENT_DEFINITION
  • AZURE_DEVCENTER_ENVIRONMENT_TYPE
  • AZURE_DEVCENTER_ENVIRONMENT_USER

Definiera konfigurationer

Definiera konfigurationer för dina utvecklingscentra i azd miljöomfånget i .azure/<env>/config.json fil:

{
    "platform": {
        "config": {
            "catalog": "SampleCatalog",
            "environmentDefinition": "Todo",
            "environmentType": "Dev",
            "name": "sample-devcenter",
            "Project": "SampleProject"
        }
    }
}

Projektomfång

Definiera konfigurationer för dina utvecklingscentra i azd projektomfånget i platform-noden i azure.yaml-filen:

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

Användaromfång

Definiera konfigurationer för dina utvecklingscentra i användaromfånget i filen ~/<user_profile>/.azd/config.json:

{
    "platform": {
        "config": {
            "catalog": "SampleCatalog",
            "environmentDefinition": "Todo",
            "environmentType": "Dev",
            "name": "sample-devcenter",
            "Project": "SampleProject"
        }
    }
}