Condividi tramite


Configurare Visual Studio Container Tools

Usando le impostazioni di Visual Studio, è possibile controllare alcuni aspetti del funzionamento di Visual Studio con i contenitori Docker, incluse le impostazioni che influiscono sull'utilizzo delle prestazioni e delle risorse quando si usano contenitori Docker.

Impostazioni degli strumenti contenitore

Dal menu principale scegliere Strumenti > Opzioni ed espandere Strumenti contenitore > Impostazioni. Vengono visualizzate le impostazioni degli strumenti contenitore.

Impostazioni generali degli strumenti contenitore:

Opzioni di Visual Studio Container Tools, che mostrano: Installare Docker Desktop, se necessario, e Considerare attendibile ASP.NET certificato SSL principale.

Impostazioni progetto singolo e Docker Compose di Strumenti contenitore:

Opzioni di Visual Studio Container Tools, che mostrano: Terminare i contenitori alla chiusura del progetto, Eseguire il pull delle immagini Docker necessarie all'apertura del progetto e Eseguire contenitori all'apertura del progetto.

Opzioni degli strumenti contenitore di Visual Studio, che illustrano: Terminare i contenitori alla chiusura del progetto, Eseguire le immagini Docker necessarie in un progetto aperto, Eseguire un servizio nei contenitori per abilitare l'autenticazione di Azure ed Eseguire un servizio nei contenitori per abilitare Ricaricamento rapido.

La tabella seguente può essere utile per decidere come impostare queste opzioni.

Nella tabella seguente vengono descritte le impostazioni generali :

Nome Impostazione predefinita Si applica a Descrizione
Installare Docker Desktop, se necessario Richiedi conferma Singolo progetto, Docker Compose Scegliere se richiedere se Docker Desktop non è installato.
Considera attendibile ASP.NET certificato SSL core Richiedi conferma progetti ASP.NET Core 2.x Se impostato su Richiedi conferma, se il localhost certificato SSL non è attendibile, Visual Studio richiederà ogni volta che si esegue un progetto ASP.NET Core 2.x.

La tabella seguente descrive le impostazioni di Progetto singolo e Docker Compose :

Nome Impostazione predefinita Si applica a Descrizione
Eseguire il pull delle immagini Docker necessarie all'apertura del progetto Vero Singolo progetto, Docker Compose Per ottenere migliori prestazioni durante il caricamento dei progetti, Visual Studio avvierà un'operazione di pull automatico di Docker in modo che quando si è pronti per eseguire il codice l'immagine sia già stata scaricata o in fase di download. Se si caricano solo progetti e si esplora il codice, è possibile impostare su False per evitare di scaricare immagini del contenitore non necessarie.
Eseguire il pull delle immagini Docker aggiornate all'apertura del progetto Progetti .NET Core Singolo progetto, Docker Compose Quando si apre un progetto, verificare la disponibilità di aggiornamenti alle immagini e scaricare se disponibili.
Eseguire contenitori all'apertura del progetto Vero Singolo progetto, Docker Compose Anche in questo caso per migliorare le prestazioni, Visual Studio crea un contenitore in anticipo in modo che sia pronto per la compilazione e l'esecuzione del contenitore. Se si vuole controllare quando viene creato il contenitore, impostare su False.
Rimuovere i contenitori alla chiusura del progetto Vero Singolo progetto, Docker Compose Impostare su False se si desidera conservare i contenitori per la soluzione dopo la chiusura della soluzione o la chiusura di Visual Studio.
Nome Impostazione predefinita Si applica a Descrizione
Eseguire il pull delle immagini Docker necessarie all'apertura del progetto Vero Singolo progetto, Docker Compose Per ottenere migliori prestazioni durante il caricamento dei progetti, Visual Studio avvierà un'operazione di pull automatico di Docker in modo che quando si è pronti per eseguire il codice l'immagine sia già stata scaricata o in fase di download. Se si caricano solo progetti e si esplora il codice, è possibile impostare su False per evitare di scaricare immagini del contenitore non necessarie.
Eseguire il pull delle immagini Docker aggiornate all'apertura del progetto Progetti .NET Core Singolo progetto, Docker Compose Quando si apre un progetto, verificare la disponibilità di aggiornamenti alle immagini e scaricare se disponibili.
Eseguire contenitori all'apertura del progetto Vero Singolo progetto, Docker Compose Anche in questo caso per migliorare le prestazioni, Visual Studio crea un contenitore in anticipo in modo che sia pronto per la compilazione e l'esecuzione del contenitore. Se si vuole controllare quando viene creato il contenitore, impostare su False.
Rimuovere i contenitori alla chiusura del progetto Vero Singolo progetto, Docker Compose Impostare su False se si desidera conservare i contenitori per la soluzione dopo la chiusura della soluzione o la chiusura di Visual Studio.
Eseguire un servizio in contenitori per abilitare l'autenticazione di Azure Vero Singolo progetto, Docker Compose Visual Studio versione 17.6 o successiva esegue un servizio proxy di token nel contenitore che supporta l'autenticazione di Azure, in modo che le app possano usare i servizi di Azure durante lo sviluppo. Impostare su False se non si vuole che questo servizio venga installato ed eseguito.
Eseguire un servizio nei contenitori per abilitare Ricaricamento rapido Vero Singolo progetto, Docker Compose Impostare su False se non si vuole che questo servizio venga installato ed eseguito. Il servizio Ricaricamento rapido è disponibile in Visual Studio 2022 versione 17.7 e successive e supporta solo l'esecuzione senza eseguire il debug (CTRL+F5).

Le impostazioni della finestra degli strumenti Contenitori controllano le impostazioni applicabili alla finestra degli strumenti Contenitori, che mostra informazioni su contenitori e immagini Docker. Vedere Usare la finestra Contenitori

Opzioni degli strumenti contenitore di Visual Studio, che mostra le impostazioni disponibili per la finestra degli strumenti Contenitori

Nella tabella seguente vengono descritte le impostazioni della finestra Contenitori :

Nome Impostazione predefinita Descrizione
Confermare prima di eliminare i contenitori Sempre Controlla se viene richiesto quando si eliminano contenitori inutilizzati.
Conferma prima dell'eliminazione delle immagini Sempre Controlla se viene richiesto quando si eliminano immagini inutilizzate.
Confermare prima di rimuovere un contenitore Sempre Controlla se viene richiesto quando si rimuove un contenitore.
Confermare prima di rimuovere un'immagine Sempre Controlla se viene richiesto quando si rimuove un'immagine.
Conferma prima di eseguire un numero elevato di immagini Sempre Controlla se viene richiesto prima di avviare i contenitori da più di 10 immagini alla volta.

Avviso

Se il localhost certificato SSL non è attendibile e si seleziona la casella per eliminare la richiesta, le richieste Web HTTPS potrebbero non riuscire in fase di esecuzione nell'app o nel servizio. In tal caso, deselezionare la casella di controllo Non richiedere conferma, eseguire il progetto e indicare l'attendibilità al prompt.

Configurare l'autenticazione di Azure

Se l'app usa i servizi di Azure, richiede le credenziali di autenticazione appropriate quando viene eseguita in un contenitore per l'autenticazione con i servizi di Azure. Durante lo sviluppo, in genere è possibile usare le proprie credenziali di Azure anziché le credenziali usate dall'app nell'ambiente di produzione, ma tali credenziali sono necessarie nell'ambiente contenitore per essere utili per l'app in contenitori in esecuzione.

A partire da Visual Studio 2022 versione 17.6, nei progetti a contenitore singolo e Docker Compose viene distribuito ed eseguito un servizio proxy di token nei contenitori che consente alle app e ai servizi di eseguire l'autenticazione in Azure. La funzionalità richiede Azure Identity 1.9.0 o versione successiva. Con questo servizio abilitato, è possibile usare automaticamente la maggior parte dei servizi di Azure senza alcuna configurazione o configurazione aggiuntiva all'interno del contenitore. In particolare, il codice può usare DefaultAzureCredential e VisualStudioCredential per eseguire l'autenticazione con i servizi di Azure allo stesso modo di all'esterno di un contenitore. Vedere README di Identità di Azure 1.9.0.

Per disabilitare questa funzionalità, impostare l'impostazione Opzioni strumenti>Eseguire un servizio nei contenitori per abilitare l'autenticazione di Azure (descritta in precedenza in questo articolo) su .False

Attenzione

Esiste un potenziale problema di sicurezza se si usa il proxy di token e sono stati abilitati determinati log di diagnostica di Strumenti contenitore. Quando la registrazione è abilitata, è possibile registrare le credenziali di autenticazione come testo normale. Questi log sono abilitati da determinate variabili di ambiente. Per i progetti a contenitore singolo, la variabile di ambiente è MS_VS_CONTAINERS_TOOLS_LOGGING_ENABLED, che quindi esegue l'accesso a %tmp%\Microsoft.VisualStudio.Containers.Tools. Per i progetti Docker Compose, è MS_VS_DOCKER_TOOLS_LOGGING_ENABLED, che quindi esegue l'accesso in %tmp%\Microsoft.VisualStudio.DockerCompose.Tools.

Per altre informazioni sull'uso dei contenitori in Visual Studio, vedere questa panoramica.