Delen via


Visual Studio Container Tools configureren

U kunt enkele aspecten van de werking van Visual Studio met Docker-containers beheren met behulp van Container Tools-instellingen . In dit artikel wordt beschreven hoe u Container Tools-instellingen configureert die van invloed kunnen zijn op de prestaties en het resourcegebruik van Visual Studio wanneer u met Docker-containers werkt.

Vereiste voorwaarden

Vereiste voorwaarden

  • Docker Desktop-.
  • Visual Studio met de workload voor ASP.NET en webontwikkeling, Azure-ontwikkelworkload en/of .NET-desktopontwikkeling geïnstalleerd.

Instellingen voor Container Tools

Als u de instellingen wilt openen, selecteert u Extra-opties > in het hoofdmenu van Visual Studio. Schuif in het linkerdeelvenster omlaag en vouw Container Tools uit.

Algemene instellingen

Schermopname van opties voor Visual Studio Container Tools.

In de volgende tabel worden de algemene instellingen beschreven:

Configuratie Standaardwaarde Beschrijving
Docker Desktop installeren indien nodig Mij vragen Kies of u een melding wilt ontvangen als Docker Desktop niet is geïnstalleerd.
Docker Desktop starten indien nodig Mij vragen Als Docker Desktop niet is gestart, kiest u of u deze automatisch wilt starten of wilt vragen.
Vertrouwen ASP.NET Core SSL-certificaat Mij vragen Kies of u wilt vragen of het localhost SSL-certificaat niet wordt vertrouwd in een ASP.NET Core-project.

Schermopname van opties voor Visual Studio Container Tools.

In de volgende tabel worden de algemene instellingen beschreven:

Configuratie Standaardwaarde Beschrijving
Vragen om een containerruntime te installeren wanneer er geen is geïnstalleerd Ingeschakeld Kies of u een melding wilt ontvangen als Docker Desktop of Podman niet is geïnstalleerd.
Verzoek om het ASP.NET Core SSL-certificaat te vertrouwen Kies of u wilt vragen of het localhost SSL-certificaat niet wordt vertrouwd in een ASP.NET Core-project.
Start indien nodig de containerruntime Mij vragen Als Docker Desktop of Podman niet is gestart, kunt u ervoor kiezen deze automatisch te starten of een melding te krijgen om dit te doen.
containerruntime Auto Kies de containerruntime; Docker en Podman worden ondersteund. KiesAuto of u wilt dat Visual Studio detecteert welke runtime u gebruikt.

Belangrijk

Als u Vertrouwen ASP.NET Core SSL-certificaat instelt op Nooit en het localhost SSL-certificaat niet wordt vertrouwd, mislukken HTTPS-webaanvragen mogelijk tijdens runtime. In dat geval stelt u Vertrouw ASP.NET Core SSL-certificaat in op Vraag om bevestiging, voert u uw project uit, en geeft u bij de prompt aan dat u het vertrouwt.

Instellingen voor één project of Docker Compose

De instellingen voor één project voor Container Tools en Docker Compose zijn identiek.

Schermopname van opties voor Visual Studio 2022 Container Tools.

In de volgende tabel worden instellingen voor enkel project en Docker Compose beschreven:

Configuratie Standaardwaarde Beschrijving
Vereiste Docker-installatiekopieën ophalen bij het openen van het project Klopt Of u een docker-pull-bewerking op de achtergrond wilt starten bij het laden van een containerproject. Vereiste afbeeldingen zijn gedownload of worden gedownload wanneer u klaar bent om uw code uit te voeren. Als u alleen door de code wilt bladeren, kunt u instellen op False om te voorkomen dat u containerinstallatiekopieën downloadt die u niet nodig hebt.
Bijgewerkte Docker-afbeeldingen ophalen bij het openen van een project .NET Core-projecten Of voor welke projecten een Docker pull moet worden uitgevoerd voor alle afbeeldingen in het geopende project om de meest recente updates te krijgen.
Containers uitvoeren bij projectopening Klopt Of u wel of geen container maakt bij het laden van een containerproject, zodat deze klaar is wanneer u het project bouwt en uitvoert. Als u liever wilt bepalen wanneer uw container wordt gemaakt, stelt u in op False.
Containers verwijderen bij het sluiten van een project Klopt Of u containers voor uw oplossing wilt verwijderen nadat u de oplossing hebt gesloten of Visual Studio hebt gesloten.
Een service uitvoeren in containers om Azure-verificatie in te schakelen Klopt Voor Visual Studio versie 17.6 of hoger, of het nodig is om in de container een token-proxyservice te installeren en uit te voeren om Azure-verificatie in te schakelen. Met deze service kunnen uw apps Azure-services gebruiken tijdens de ontwikkeling. Zie de sectie Azure-verificatie configureren voor meer informatie.
Een service uitvoeren in containers om Hot Reload in te schakelen Klopt Voor Visual Studio versie 17.7 en hoger, of u de Hot Reload-service wilt installeren en uitvoeren. Deze service biedt alleen ondersteuning voor uitvoering zonder foutopsporing, Ctrl+F5.

De volgende instellingen in de sectie Container Warmup bepalen hoe Visual Studio de prestaties optimaliseert door services te starten en afbeeldingen voor te bereiden op verwacht gebruik.

Configuratie Standaardwaarde Beschrijving
Vereiste afbeeldingen ophalen bij het openen van het project Ingeschakeld Of u een docker-pull-bewerking op de achtergrond wilt starten bij het laden van een containerproject. Vereiste afbeeldingen zijn gedownload of worden gedownload wanneer u klaar bent om uw code uit te voeren. Als u alleen door de code wilt bladeren, kunt u instellen op False om te voorkomen dat u containerinstallatiekopieën downloadt die u niet nodig hebt.
Containers uitvoeren bij projectopening Klopt Of u wel of geen container maakt bij het laden van een containerproject, zodat deze klaar is wanneer u het project bouwt en uitvoert. Als u liever wilt bepalen wanneer uw container wordt gemaakt, stelt u in op False.
Containers verwijderen bij het sluiten van een project Klopt Of u containers voor uw oplossing wilt verwijderen nadat u de oplossing hebt gesloten of Visual Studio hebt gesloten.

De volgende instellingen worden weergegeven in de sectie Foutopsporing :

Configuratie Standaardwaarde Beschrijving
Een service uitvoeren in containers om Azure-verificatie in te schakelen Ingeschakeld Of u een tokenproxyservice in de container wilt installeren en uitvoeren om Azure-verificatie in te schakelen. Met deze service kunnen uw apps Azure-services gebruiken tijdens de ontwikkeling. Zie de sectie Azure-verificatie configureren voor meer informatie.
Een service uitvoeren in containers om Hot Reload in te schakelen Ingeschakeld Of u de Hot Reload-service wilt installeren en uitvoeren. Deze service biedt alleen ondersteuning voor uitvoering zonder foutopsporing, Ctrl+F5.

Vensterinstellingen voor containers

De instellingen van het venster Containers zijn van toepassing op het venster Containers in de Visual Studio IDE, waarin informatie over Docker-containers en -installatiekopieën wordt weergegeven. Voor meer informatie, zie Het venster Containers gebruiken.

Schermopname van de opties voor Visual Studio Container Tools, met de instellingen die beschikbaar zijn voor het venster Containers.

In de volgende tabel worden de instellingen van het venster Containers beschreven:

Configuratie Standaardwaarde Beschrijving
Bevestigen voordat containers worden gesnoeid Altijd Of u wordt gevraagd om ongebruikte containers te verwijderen.
Bevestigen voordat afbeeldingen worden verwijderd Altijd Of u gevraagd wilt worden wanneer u ongebruikte afbeeldingen wilt opruimen.
Bevestigen voordat u een container verwijdert Altijd Of er om bevestiging wordt gevraagd wanneer u een container verwijdert.
Bevestigen voordat u een afbeelding verwijdert Altijd Of er om bevestiging wordt gevraagd bij het verwijderen van een afbeelding.
Bevestigen voordat u een groot aantal afbeeldingen verwerkt Altijd Of u wordt gevraagd voordat u containers van meer dan 10 images tegelijk start.
Weergave tekenreeksformaat voor gebruik in het venster containers Blanco Een weergavetekenreeksindeling die moet worden gebruikt in het venster Containers, met ondersteuning voor tokens {ContainerName}, {ImageName}, {ProjectName} en {ContainerID}.
Containers groeperen op het Docker Compose-project Altijd Of u containers wilt groeperen op basis van het Docker Compose-project waarvan ze deel uitmaken.

Azure-verificatie configureren

Als uw app gebruikmaakt van Azure-services, moet deze over de juiste referenties beschikken om te authenticeren bij Azure-services wanneer deze in een container wordt uitgevoerd. U kunt meestal uw eigen Azure-referenties gebruiken tijdens de ontwikkeling, maar om uit te voeren in de containeromgeving, vereist de container-app de referenties die in productie worden gebruikt.

Visual Studio 2022 versie 17.6 en hoger implementeert en voert een tokenproxyservice uit in uw projecten met één container en Docker Compose om uw apps en services te helpen verifiëren in Azure. Voor de functie is Azure Identity 1.9.0 of hoger vereist.

Als deze service is ingeschakeld, kunt u automatisch de meeste Azure-services in de container gebruiken zonder toegevoegde configuratie of installatie. Uw code kan DefaultAzureCredential gebruiken en zich met VisualStudioCredential authentiseren bij Azure-services op dezelfde manier als buiten een container. Voor meer informatie, zie de Azure Identity 1.9.0 README.

Als u deze functie wilt uitschakelen, stelt u Een service in containers uitvoeren om Azure-verificatie te activeren in op False in de Container Toolsinstellingen van een enkel project of Docker Compose.

Waarschuwing

Het gebruik van de tokenproxy en het inschakelen van bepaalde diagnostische logboeken vormt een mogelijk beveiligingsprobleem. Deze logboeken kunnen verificatiereferenties beschikbaar maken als tekst zonder opmaak. Met de volgende omgevingsvariabelen worden deze logboeken ingeschakeld:

  • Voor projecten met één container, waarbij er wordt ingelogd op MS_VS_CONTAINERS_TOOLS_LOGGING_ENABLED%tmp%\Microsoft.VisualStudio.Containers.Tools.
  • Voor Docker Compose-projecten, MS_VS_DOCKER_TOOLS_LOGGING_ENABLED, waarmee u zich aanmeldt %tmp%\Microsoft.VisualStudio.DockerCompose.Tools.

Vensterinstellingen voor containers

De instellingen van het venster Containers zijn van toepassing op het venster Containers in de Visual Studio IDE, waarin informatie over Docker-containers en -installatiekopieën wordt weergegeven. Voor meer informatie, zie Het venster Containers gebruiken.

In de volgende tabel worden de instellingen van het venster Containers beschreven:

Configuratie Standaardwaarde Beschrijving
Bevestigen voordat containers worden gesnoeid Ingeschakeld Of u wordt gevraagd om ongebruikte containers te verwijderen.
Bevestigen voordat afbeeldingen worden verwijderd Ingeschakeld Of u gevraagd wilt worden wanneer u ongebruikte afbeeldingen wilt opruimen.
Bevestigen voordat u een container verwijdert Ingeschakeld Of er om bevestiging wordt gevraagd wanneer u een container verwijdert.
Bevestigen voordat u een afbeelding verwijdert Ingeschakeld Of er om bevestiging wordt gevraagd bij het verwijderen van een afbeelding.
Bevestigen voordat u een groot aantal afbeeldingen verwerkt Ingeschakeld Of u wordt gevraagd voordat u containers van meer dan 10 images tegelijk start.
Weergave tekenreeksformaat voor gebruik in het venster containers Blanco Een weergavetekenreeksindeling die moet worden gebruikt in het venster Containers, met ondersteuning voor tokens {ContainerName}, {ImageName}, {ProjectName} en {ContainerID}.
Containers groeperen op het Docker Compose-project Ingeschakeld Of u containers wilt groeperen op basis van het Docker Compose-project waarvan ze deel uitmaken.

Azure-verificatie configureren

Als uw app gebruikmaakt van Azure-services, moet deze over de juiste referenties beschikken om te authenticeren bij Azure-services wanneer deze in een container wordt uitgevoerd. U kunt meestal uw eigen Azure-referenties gebruiken tijdens de ontwikkeling, maar om uit te voeren in de containeromgeving, vereist de container-app de referenties die in productie worden gebruikt.

Visual Studio implementeert en voert een tokenproxyservice uit in uw projecten met één container en Docker Compose om uw apps en services te helpen verifiëren in Azure. Voor de functie is Azure Identity 1.9.0 of hoger vereist.

Als deze service is ingeschakeld, kunt u automatisch de meeste Azure-services in de container gebruiken zonder toegevoegde configuratie of installatie. Uw code kan DefaultAzureCredential gebruiken en zich met VisualStudioCredential authentiseren bij Azure-services op dezelfde manier als buiten een container. Voor meer informatie, zie de Azure Identity 1.9.0 README.

Als u deze functie wilt uitschakelen, stelt u Een service in containers uitvoeren om Azure-verificatie te activeren in op False in de Container Toolsinstellingen van een enkel project of Docker Compose.

Waarschuwing

Het gebruik van de tokenproxy en het inschakelen van bepaalde diagnostische logboeken vormt een mogelijk beveiligingsprobleem. Deze logboeken kunnen verificatiereferenties beschikbaar maken als tekst zonder opmaak. Met de volgende omgevingsvariabelen worden deze logboeken ingeschakeld:

  • Voor projecten met één container, waarbij er wordt ingelogd op MS_VS_CONTAINERS_TOOLS_LOGGING_ENABLED%tmp%\Microsoft.VisualStudio.Containers.Tools.
  • Voor Docker Compose-projecten, MS_VS_DOCKER_TOOLS_LOGGING_ENABLED, waarmee u zich aanmeldt %tmp%\Microsoft.VisualStudio.DockerCompose.Tools.