Partager via


Configurer les outils de conteneur Visual Studio

Les paramètres de Visual Studio vous permettent de contrôler certains aspects du fonctionnement de Visual Studio avec les conteneurs Docker. Tel est notamment le cas des paramètres qui ont un effet sur les performances et sur l’utilisation de ressources quand des conteneurs Docker sont utilisés.

Paramètres des outils de conteneur

Dans le menu principal, choisissez Outils > Options, puis développez Outils de conteneur > Paramètres. Les paramètres des outils de conteneur s’affichent.

Paramètres Général des outils de conteneur :

Options des outils de conteneur Visual Studio, notamment : Installer Docker Desktop si nécessaire et Approuver le certificat SSL ASP.NET Core.

Paramètres des outils de conteneur Un seul projet et Docker Compose :

Options des outils de conteneur Visual Studio, notamment : Tuer les conteneurs à la fermeture du projet, Tirer (pull) les images Docker obligatoires à l’ouverture du projet et Exécuter les conteneurs à l’ouverture du projet.

Options des Outils de conteneur Visual Studio montrant : Tuer les conteneurs à la fermeture du projet, Extraire les images Docker requises à l’ouverture du projet, Exécuter des conteneurs à l’ouverture du projet, Exécuter un service dans des conteneurs pour activer l’authentification Azure et Exécuter un service dans des conteneurs pour activer le service Rechargement à chaud.

Le tableau suivant peut vous aider à déterminer comment définir ces options.

Le tableau suivant décrit les paramètres Général :

Nom Paramètre par défaut S'applique à Description
Installer Docker Desktop si nécessaire Me demander Un seul projet, Docker Compose Indiquez si vous souhaitez être invité dans le cas où Docker Desktop n’est pas installé.
Approuver le certificat SSL ASP.NET Me demander Projets ASP.NET Core 2.x Quand le paramètre est défini sur Me demander, si le certificat SSL localhost n’est pas approuvé, Visual Studio vous invite à chaque exécution d’un projet ASP.NET Core 2.x.

Le tableau suivant décrit les paramètres Un seul projet et Docker Compose :

Nom Paramètre par défaut S'applique à Description
Tirer (pull) les images Docker obligatoires à l’ouverture du projet True Un seul projet, Docker Compose Pour améliorer les performances lors du chargement des projets, Visual Studio démarre une opération d’extraction Docker en arrière-plan de sorte que lorsque vous êtes prêt à exécuter votre code, l’image est déjà téléchargée ou en cours de téléchargement. Si vous chargez simplement des projets et parcourez du code, vous pouvez définir ce paramètre sur False pour éviter le téléchargement des images conteneur dont vous n’avez pas besoin.
Effectuer un tirage (pull) des images Docker mises à jour à l’ouverture du projet Projets .NET Core Un seul projet, Docker Compose Quand vous ouvrez un projet, vérifiez s’il existe des mises à jour pour les images et téléchargez-les si c’est le cas.
Exécuter les conteneurs à l’ouverture du projet True Un seul projet, Docker Compose De nouveau, pour améliorer les performances, Visual Studio crée un conteneur à l’avance pour qu’il soit prêt au moment où vous créez et exécutez votre conteneur. Si vous voulez contrôler le moment auquel est créé votre conteneur, définissez le paramètre sur False.
Supprimer les conteneurs à la fermeture du projet True Un seul projet, Docker Compose Définissez le paramètre sur False si vous voulez que les conteneurs de votre solution soient conservés après la fermeture de la solution ou la fermeture de Visual Studio.
Nom  Paramètre par défaut S'applique à Description
Tirer (pull) les images Docker obligatoires à l’ouverture du projet True Un seul projet, Docker Compose Pour améliorer les performances lors du chargement des projets, Visual Studio démarre une opération d’extraction Docker en arrière-plan de sorte que lorsque vous êtes prêt à exécuter votre code, l’image est déjà téléchargée ou en cours de téléchargement. Si vous chargez simplement des projets et parcourez du code, vous pouvez définir ce paramètre sur False pour éviter le téléchargement des images conteneur dont vous n’avez pas besoin.
Effectuer un tirage (pull) des images Docker mises à jour à l’ouverture du projet Projets .NET Core Un seul projet, Docker Compose Quand vous ouvrez un projet, vérifiez s’il existe des mises à jour pour les images et téléchargez-les si c’est le cas.
Exécuter les conteneurs à l’ouverture du projet True Un seul projet, Docker Compose De nouveau, pour améliorer les performances, Visual Studio crée un conteneur à l’avance pour qu’il soit prêt au moment où vous créez et exécutez votre conteneur. Si vous voulez contrôler le moment auquel est créé votre conteneur, définissez le paramètre sur False.
Supprimer les conteneurs à la fermeture du projet True Un seul projet, Docker Compose Définissez le paramètre sur False si vous voulez que les conteneurs de votre solution soient conservés après la fermeture de la solution ou la fermeture de Visual Studio.
Exécuter un service dans des conteneurs pour activer l’authentification Azure True Un seul projet, Docker Compose Visual Studio version 17.6 ou ultérieure exécute un service proxy de jeton dans le conteneur, qui facilite l’authentification Azure, afin que vos applications puissent utiliser les services Azure pendant le développement. Configurez sur False si vous ne souhaitez pas que ce service soit installé et exécuté.
Exécuter un service dans des conteneurs pour activer le service Rechargement à chaud True Un seul projet, Docker Compose Configurez sur False si vous ne souhaitez pas que ce service soit installé et exécuté. Le service Rechargement à chaud est disponible dans Visual Studio 2022 version 17.7 et ultérieure et prend uniquement en charge l’exécution sans débogage (Ctrl+F5).

Les paramètres Fenêtre Outil de conteneurs contrôlent les paramètres qui s’appliquent à la fenêtre d’outil Conteneurs, qui affiche des informations sur les conteneurs et les images Docker. Consultez Utiliser la fenêtre Conteneurs.

Options des outils de conteneur Visual Studio, notamment les paramètres disponibles pour la fenêtre Outil de conteneurs

Le tableau suivant décrit les paramètres de la fenêtre Conteneurs :

Nom Paramètre par défaut Description
Confirmer avant d’élaguer les conteneurs Toujours Contrôle si vous êtes invité à confirmer l’opération d’élagage des conteneurs inutilisés.
Confirmer avant d’élaguer les images Toujours Contrôle si vous êtes invité à confirmer l’opération d’élagage des images inutilisées.
Confirmer avant de supprimer un conteneur Toujours Contrôle si vous êtes invité à confirmer l’opération de suppression d’un conteneur.
Confirmer avant de supprimer une image Toujours Contrôle si vous êtes invité à confirmer l’opération de suppression d’une image.
Confirmer avant d'exécuter un grand nombre d’images Toujours Contrôle si vous êtes invité à confirmer le démarrage de conteneurs de plus de 10 images à la fois.

Avertissement

Si le certificat SSL localhost n’est pas approuvé et que vous sélectionnez la case pour supprimer l’invite, les requêtes web HTTPS risquent d’échouer au moment de l’exécution dans votre application ou service. Dans ce cas, effacez Ne pas demander, exécutez votre projet et confirmez l’approbation à l’invite.

Configurer l’authentification Azure

Si votre application utilise des services Azure, elle a besoin des informations d’identification d’authentification appropriées lorsqu’elle s’exécute dans un conteneur afin de s’authentifier auprès des services Azure. Pendant le développement, vous pouvez généralement utiliser vos propres informations d’identification Azure au lieu des informations d’identification utilisées par l’application en production, mais ces informations d’identification sont nécessaires dans l’environnement de conteneur pour être utiles à l’application conteneurisée en cours d’exécution.

À compter de Visual Studio 2022 version 17.6, dans les projets à conteneur unique et Docker Compose, un service proxy de jeton est déployé et exécuté dans vos conteneurs pour faciliter l’authentification de vos applications et services dans Azure. La fonctionnalité nécessite Azure Identity 1.9.0 ou version ultérieure. Une fois ce service activé, vous pouvez utiliser automatiquement la plupart des services Azure sans aucune autre configuration dans le conteneur. Plus précisément, votre code peut utiliser DefaultAzureCredential et VisualStudioCredential s’authentifier auprès des services Azure de la même manière qu’en dehors d’un conteneur. Consultez le fichier README Azure Identity 1.9.0.

Pour désactiver cette fonctionnalité, définissez le paramètreOutils>Options Exécuter un service dans des conteneurs pour activer l’authentification Azure (décrit plus haut dans cet article) sur False.

Attention

Il existe un problème de sécurité potentiel si vous utilisez le proxy de jeton et que vous avez activé certains journaux de diagnostic Outils de conteneur. Lorsque la journalisation est activée, il est possible de consigner les informations d’identification d’authentification en texte brut. Ces journaux sont activés par certaines variables d’environnement. Pour des projets de conteneur unique, la variable d’environnement est MS_VS_CONTAINERS_TOOLS_LOGGING_ENABLED, qui se connecte ensuite à %tmp%\Microsoft.VisualStudio.Containers.Tools. Pour les projets Docker Compose, il s’agit de MS_VS_DOCKER_TOOLS_LOGGING_ENABLED qui se connecte ensuite à %tmp%\Microsoft.VisualStudio.DockerCompose.Tools.

Pour en savoir plus sur l’utilisation des conteneurs dans Visual Studio, consultez cette vue d’ensemble.