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 Deployment Environments med hjälp av azd:

Aktivera stöd för Azure Deployment Environment

Du kan konfigurera azd för 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 all etablering nya dev center-komponenter. Den här konfigurationen innebär också att infra mappen i dina lokala mallar i praktiken ignoreras. azd I stället använder du 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 Deployment Evironments

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 standardfjärr azdomgivningsstöd.

azd init

Kommandoupplevelsen azd init i utvecklingscenterläge visar alla azd-kompatibla ADE-mallar för val från den konfigurerade katalogen. När du har klonat mallkoden under init-processen azd uppdateras filen automatiskt så att den azure.yaml 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 paketeras, etableras och distribueras till Azure Deployment Environments. Etableringssteget för azd up kommandot använder dock mallarna för den organiserade infrastrukturen som kod i fjärrutvecklingscentret, medan distributionssteget distribuerar källkoden i mallen azd . När utvecklingscenterläget är aktiverat azd ignorerar mappen i den infra lokala azd mallen 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 dev center-katalogen i stället för att visa mallar från standardgalleriet AZD Awesome. Kataloger innehåller en uppsättning utvalda och godkända infrastruktur-som-kod-mallar som utvecklingsteamen kan använda för att skapa miljöer.

azd template list

A screenshot showing the updated template gallery.

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 azd ignorerar mappen i den infra lokala azd mallen 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 azure.yaml filen. Om mallarna inte tilldelar taggar kan du åtgärda problemet på något av två sätt:

  • Arbeta 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 filen azure.yaml .

  • resoureName Ange i filen i azure.yaml 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 utvecklingscentra på flera platser. Inställningar kombineras från dessa platser för att skapa den slutliga uppsättningen konfigurationer i följande prioritetsordning:

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

azd frågar automatiskt efter 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 miljöomfånget azd i .azure/<env>/config.json filen:

{
    "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 platform i filens azure.yaml nod:

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 ~/<user_profile>/.azd/config.json i filen:

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