Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
Met de Azure Developer CLI (azd) kunt u meerdere implementatieomgevingen voor uw projecten beheren, om configuraties gescheiden te houden voor ontwikkeling, testen en productie. In dit artikel worden essentiële concepten uitgelegd over hoe u omgevingen kunt gebruiken om uw ontwikkel- en implementatieproces te beheren.
Wat zijn omgevingen?
Een omgeving in de Azure Developer CLI (azd) is een benoemde set configuraties voor een implementatie van uw app, zoals dev, test of prod. Verschillende omgevingen kunnen worden geconfigureerd met verschillende waarden. Omgevingen dienen voor verschillende belangrijke doeleinden:
- Isolatie: ontwikkel-, test- en productie-implementaties gescheiden houden.
- Configuratiebeheer: Onderhoud verschillende instellingen voor elke omgeving.
- Samenwerking: teamleden in staat stellen om met hun eigen omgevingen te werken.
- Resourceorganisatie: Azure-resources groeperen en inrichten per omgeving.
- Reproduceerbaarheid: zorg voor consistente implementaties in verschillende fasen.
Elke omgeving heeft een eigen Azure-resourcegroep en configuratie-instellingen. Deze omgevingisolatie helpt voorkomen dat wijzigingen in de ene omgeving van invloed zijn op andere.
Omgevingsstructuur en -configuratie
Azure Developer CLI-omgevingen bevindenazd zich in een mapstructuur binnen uw project:
├── .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 belangrijkste onderdelen van deze structuur zijn:
-
.azuredirectory: de hoofdmap voor alle omgevingsconfiguraties. Standaard uitgesloten van broncodebeheer door het.gitignorebestand. -
Omgevingsspecifieke directory's: mappen die zijn genoemd naar uw omgevingen, zoals
dev,prodtest. -
.envbestand: bevat omgevingsspecifieke variabelen die door uw toepassing en tijdens de implementatie worden gebruikt. -
config.json: Wordt gebruikt om instellingen aan te sturen die invloed hebben opazdhet gedrag en de functies van opdrachten. Dit bestand is niet bedoeld om rechtstreeks door eindgebruikers te worden gebruikt.
Omgevingsnamen
Omgevingsnaam volgt doorgaans deze patronen:
- Teamprojecten:
<project-name-[dev/int/prod]> - Persoonlijke projecten:
<personal-unique-alias-[dev/int/prod]>
Deze naamconventies worden niet afgedwongen door azd en kunnen door de gebruiker worden geconfigureerd.
Omgevingsvariabelen
Azure Developer CLI-omgevingsvariabelen bieden een manier om configuratie-instellingen op te slaan die van invloed zijn op en kunnen variëren tussen omgevingen. Wanneer u Azure Developer CLI-opdrachten uitvoert, worden deze variabelen gebruikt om:
- Configureer uw toepassingsinstellingen, zoals eindpunten voor Azure-services.
- Definieer infrastructuurparameters om het inrichtingsproces te beïnvloeden.
Het .env bestand bevat deze variabelen in een standaardindeling:
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
Algemene omgevingsvariabelen zijn:
| Veranderlijk | Beschrijving |
|---|---|
AZURE_ENV_NAME |
Naam van de huidige omgeving |
AZURE_LOCATION |
Azure-regio waarin resources worden geïmplementeerd |
AZURE_SUBSCRIPTION_ID |
Id van het Azure-abonnement dat wordt gebruikt voor deze omgeving |
AZURE_RESOURCE_GROUP |
Naam van de resourcegroep voor deze omgeving |
Aanbeveling
Ga naar de documentatie voor omgevingsvariabelen voor andere algemene omgevingsvariabelen en servicespecifieke voorbeelden.
Wanneer u met omgevingsvariabelen werkt:
- Vermijd het doorvoeren van
.envbestanden naar broncodebeheer. Als de omgevingsconfiguratie moet worden behouden of gedeeld, moeten gebruikers externe omgevingen gebruiken. - Gebruik consistente naamgeving in omgevingen.
- Gebruik de
azd env setopdracht om variabelen veilig bij te werken.
Waarschuwing
Sla nooit geheimen op in een Azure Developer CLI-bestand .env . Deze bestanden kunnen eenvoudig worden gedeeld of gekopieerd naar niet-geautoriseerde locaties of worden ingecheckt in broncodebeheer. Gebruik services zoals Azure Key Vault of Op rollen gebaseerd toegangsbeheer (RBAC) voor beveiligde of geheimloze oplossingen.
Andere frameworkomgevingen vergelijken
Veel programmeerframeworks en hulpprogramma's zoals Node.js, Django of React maken gebruik van .env bestanden voor configuratie. Hoewel Azure Developer CLI (azd) ook bestanden gebruikt .env , zijn er belangrijke verschillen:
| Begrip | Azure Developer CLI .env |
Framework-bestanden .env |
|---|---|---|
| Plaats | Opgeslagen in .azure/<environment-name>/.env |
Normaal gesproken opgeslagen in de hoofdmap van het project |
| Omgevingsondersteuning | Ondersteuning voor meerdere door de gebruiker gedefinieerde omgevingen (dev, test, prod) | Vaak moet handmatig worden geschakeld naar bestanden of naamconventies (.env.development, .env.production) |
| Laadmechanisme | Automatisch geladen door azd opdrachten |
Meestal vereisen expliciet laden in toepassingscode of buildscripts |
| Integratie | Diep geïntegreerd met Azure-services en resourceinrichting | Configuratie voor algemeen gebruik, niet specifiek voor Azure |
| Variabel beheer | Beheerd via azd env opdrachten |
Normaal gesproken handmatig bewerkt of via aangepaste scripts |
Hoewel beide vergelijkbare doeleinden dienen, voegt de benadering van .env Azure Developer CLI structuur en hulpprogramma's toe die zijn ontworpen voor het beheren van meerdere implementatieomgevingen en Azure-resources.
Opmerking
Als uw project al frameworkspecifieke .env bestanden gebruikt, kunt u beide configuratiesystemen zonder conflicten behouden.
azd omgevingsvariabelen overschrijven systeemomgevingsvariabelen met dezelfde naam voor sommige bewerkingen.