Partager via


Vue d’ensemble des environnements Azure Developer CLI

Azure Developer CLI (azd) vous permet de gérer plusieurs environnements de déploiement pour vos projets afin de séparer les configurations pour le développement, les tests et la production. Cet article explique les concepts essentiels sur la façon dont vous pouvez utiliser des environnements pour gérer votre processus de développement et de déploiement.

Qu’est-ce que les environnements ?

Un environnement dans Azure Developer CLI (azd) est un ensemble nommé de configurations pour un déploiement de votre application, tel que le développement, le test ou la production. Différents environnements peuvent être configurés avec différentes valeurs. Les environnements servent plusieurs objectifs importants :

  • Isolation : séparez les déploiements de développement, de test et de production.
  • Gestion de la configuration : conservez des paramètres différents pour chaque environnement.
  • Collaboration : permettre aux membres de l’équipe de travailler avec leurs propres environnements.
  • Organisation des ressources : regrouper et approvisionner des ressources Azure par environnement.
  • Reproductibilité : garantir des déploiements cohérents entre différentes étapes.

Chaque environnement a ses propres paramètres de configuration et de groupe de ressources Azure. Cette isolation de l’environnement permet d’empêcher les modifications d’un environnement d’affecter d’autres personnes.

Structure et configuration de l’environnement

Les environnements Azure Developer CLI (azd) vivent dans une structure de répertoires au sein de votre projet :

├── .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]

Les principaux composants de cette structure sont les suivants :

  • .azure répertoire : répertoire racine de toutes les configurations d’environnement. Exclu du contrôle de code source par défaut par le .gitignore fichier.
  • Répertoires spécifiques à l’environnement : répertoires nommés après vos environnements, tels que dev, test, prod.
  • .env fichier : contient des variables spécifiques à l’environnement utilisées par votre application et pendant le déploiement.
  • config.json: utilisé pour piloter les paramètres qui influencent azd le comportement et les fonctionnalités des commandes. Ce fichier n’est pas destiné à être utilisé directement par les utilisateurs finaux.

Noms d’environnement

Le nommage de l’environnement suit généralement ces modèles :

  • Projets d’équipe : <project-name-[dev/int/prod]>
  • Projets personnels : <personal-unique-alias-[dev/int/prod]>

Ces conventions d’affectation de noms ne sont pas appliquées azd et sont configurables par l’utilisateur.

Variables d'environnement

Les variables d’environnement Cli pour développeurs Azure permettent de stocker les paramètres de configuration qui influencent et peuvent varier entre les environnements. Lorsque vous exécutez des commandes Azure Developer CLI, ces variables sont utilisées pour :

  • Configurez les paramètres de votre application, tels que les points de terminaison pour les services Azure.
  • Définissez les paramètres d’infrastructure pour influencer le processus d’approvisionnement.

Le .env fichier contient ces variables dans un format standard :

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

Les variables d’environnement courantes sont les suivantes :

Variable Descriptif
AZURE_ENV_NAME Nom de l’environnement actuel
AZURE_LOCATION Région Azure où les ressources sont déployées
AZURE_SUBSCRIPTION_ID ID de l’abonnement Azure utilisé pour cet environnement
AZURE_RESOURCE_GROUP Nom du groupe de ressources pour cet environnement

Conseil / Astuce

Pour obtenir d’autres variables d’environnement courantes et des exemples spécifiques au service, consultez la documentation sur les variables d’environnement .

Lorsque vous utilisez des variables d’environnement :

  • Évitez de valider des .env fichiers dans le contrôle de code source. Si la configuration de l’environnement doit être conservée ou partagée, les utilisateurs doivent utiliser des environnements distants.
  • Utilisez un nommage cohérent entre les environnements.
  • Utilisez la azd env set commande pour mettre à jour les variables en toute sécurité.

Avertissement

Ne stockez jamais de secrets dans un fichier AZURE Developer CLI .env . Ces fichiers peuvent facilement être partagés ou copiés dans des emplacements non autorisés ou archivés dans le contrôle de code source. Utilisez des services tels qu’Azure Key Vault ou le contrôle d’accès en fonction du rôle Azure (RBAC) pour des solutions protégées ou sans secret.

Comparer d’autres environnements d’infrastructure

De nombreux frameworks de programmation et outils tels que Node.js, Django ou React utilisent .env des fichiers pour la configuration. Bien qu’Azure Developer CLI (azd) utilise également des .env fichiers, il existe des différences importantes :

Concept Azure Developer CLI .env Fichiers framework .env
Lieu Stocké dans .azure/<environment-name>/.env Généralement stocké dans le répertoire racine du projet
Prise en charge de l’environnement Prise en charge de plusieurs environnements définis par l’utilisateur (développement, test, prod) Souvent, exiger un changement de fichier manuel ou des conventions d’affectation de noms (.env.development, .env.production)
Mécanisme de chargement Automatiquement chargé par azd les commandes Nécessite généralement un chargement explicite dans le code de l’application ou des scripts de génération
Intégration Profondément intégré aux services Azure et au provisionnement des ressources Configuration à usage général, et non spécifique à Azure
Gestion des variables Géré par le biais azd env de commandes Généralement modifié manuellement ou via des scripts personnalisés

Bien que les deux servent à des fins similaires, l’approche d’Azure .env Developer CLI ajoute une structure et des outils conçus pour gérer plusieurs environnements de déploiement et ressources Azure.

Remarque

Si votre projet utilise déjà des fichiers spécifiques à l’infrastructure .env , vous pouvez conserver les deux systèmes de configuration sans conflit. azd les variables d’environnement remplacent les variables d’environnement système du même nom pour certaines opérations.

Étapes suivantes