Dela via


Översikt över CLI-miljöer för Azure Developer

Med Azure Developer CLI (azd) kan du hantera flera distributionsmiljöer för dina projekt för att hålla konfigurationerna åtskilda för utveckling, testning och produktion. Den här artikeln beskriver viktiga begrepp om hur du kan använda miljöer för att hantera din utveckling och distributionsprocess.

Vad är miljöer?

En miljö i Azure Developer CLI (azd) är en namngiven uppsättning konfigurationer för en distribution av din app, till exempel utveckling, testning eller prod. Olika miljöer kan konfigureras med olika värden. Miljöer har flera viktiga syften:

  • Isolering: Håll distributioner för utveckling, testning och produktion åtskilda.
  • Konfigurationshantering: Underhålla olika inställningar för varje miljö.
  • Samarbete: Gör det möjligt för gruppmedlemmar att arbeta med sina egna miljöer.
  • Resursorganisation: Gruppera och etablera Azure-resurser efter miljö.
  • Reproducerbarhet: Säkerställ konsekventa distributioner i olika faser.

Varje miljö har en egen Azure-resursgrupp och konfigurationsinställningar. Den här miljöisoleringen hjälper till att förhindra att ändringar i en miljö påverkar andra.

Miljöstruktur och konfiguration

Azure Developer CLI-miljöer (azd) finns i en katalogstruktur i projektet:

├── .azure                          [Created when you run azd init or azd up]
│   ├── <environment-name-1>        [Directory for environment-specific configurations]
│   │   ├── .env                    [Environment variables for this environment]
│   │   └── config.json             [Additional configuration parameters for this environment]
│   ├── <environment-name-2>        [Another environment]
│   │   ├── .env                    
│   │   └── config.json
│   └── config.json                 [Global azd configuration]

De viktigaste komponenterna i den här strukturen är:

  • .azure katalog: Rotkatalogen för alla miljökonfigurationer. Exkluderas från källkontrollen av .gitignore filen som standard.
  • Miljöspecifika kataloger: Kataloger med namnet efter dina miljöer, till exempel dev, test, prod.
  • .env fil: Innehåller miljöspecifika variabler som används av ditt program och under distributionen.
  • config.json: Används för att köra inställningar som påverkar azd kommandobeteende och funktioner. Den här filen är inte avsedd att användas direkt av slutanvändare.

Miljönamn

Namngivning av miljön följer vanligtvis dessa mönster:

  • Teamprojekt: <project-name-[dev/int/prod]>
  • Personliga projekt: <personal-unique-alias-[dev/int/prod]>

Dessa namngivningskonventioner tillämpas inte av azd och kan konfigureras av användaren.

Miljövariabler

Azure Developer CLI-miljövariabler är ett sätt att lagra konfigurationsinställningar som påverkar och kan variera mellan miljöer. När du kör CLI-kommandon för Azure Developer används dessa variabler för att:

  • Konfigurera dina programinställningar, till exempel slutpunkter för Azure-tjänster.
  • Definiera infrastrukturparametrar som påverkar etableringsprocessen.

Filen .env innehåller dessa variabler i standardformat:

AZURE_ENV_NAME=dev
AZURE_LOCATION=eastus
AZURE_SUBSCRIPTION_ID=00000000-0000-0000-0000-000000000000
AZURE_RESOURCE_GROUP=rg-dev-12345
SERVICE_WEB_HOSTNAME=web-dev-12345.azurewebsites.net
SERVICE_API_HOSTNAME=api-dev-12345.azurewebsites.net

Vanliga miljövariabler är:

Variabel Beskrivning
AZURE_ENV_NAME Namnet på den aktuella miljön
AZURE_LOCATION Azure-region där resurser distribueras
AZURE_SUBSCRIPTION_ID ID för Den Azure-prenumeration som används för den här miljön
AZURE_RESOURCE_GROUP Namnet på resursgruppen för den här miljön

Tips/Råd

Andra vanliga miljövariabler och tjänstspecifika exempel finns i dokumentationen om miljövariabler .

När du arbetar med miljövariabler:

  • Undvik att checka in .env filer till källkontrollen. Om miljökonfigurationen måste bevaras eller delas bör användarna använda fjärrmiljöer.
  • Använd konsekvent namngivning i olika miljöer.
  • azd env set Använd kommandot för att uppdatera variabler på ett säkert sätt.

Varning

Lagra aldrig hemligheter i en Azure Developer CLI-fil .env . Dessa filer kan enkelt delas eller kopieras till obehöriga platser eller checkas in i källkontrollen. Använd tjänster som Azure Key Vault eller Rollbaserad åtkomstkontroll i Azure (RBAC) för skyddade eller hemlighetslösa lösningar.

Jämföra andra ramverksmiljöer

Många programmeringsramverk och verktyg som Node.js, Django eller React använder .env filer för konfiguration. Även om Azure Developer CLI (azd) också använder .env filer finns det viktiga skillnader:

Begrepp Azure Developer CLI .env Ramverksfiler .env
Läge Lagras i .azure/<environment-name>/.env Lagras vanligtvis i projektrotkatalogen
Miljöstöd Stöd för flera användardefinierade miljöer (dev, test, prod) Kräver ofta manuell filväxling eller namngivningskonventioner (.env.development, .env.production)
Inläsningsmekanism Läses in automatiskt av azd kommandon Kräver vanligtvis explicit inläsning i programkod eller byggskript
Integration Djupt integrerad med Azure-tjänster och resursetablering Konfiguration av generell användning, inte Azure-specifik
Variabelhantering Hanteras via azd env kommandon Redigeras vanligtvis manuellt eller via anpassade skript

Båda har liknande syften, men Azure Developer CLI:s .env metod lägger till struktur och verktyg som är utformade för att hantera flera distributionsmiljöer och Azure-resurser.

Anmärkning

Om ditt projekt redan använder ramverksspecifika .env filer kan du behålla båda konfigurationssystemen utan konflikter. azd miljövariabler åsidosätter systemmiljövariabler med samma namn för vissa åtgärder.

Nästa steg