Condividi tramite


Impostare il punto di ingresso del contenitore

Un punto di ingresso del contenitore è un processo configurato per l'esecuzione all'avvio di un contenitore.

Visual Studio usa un punto di ingresso del contenitore personalizzato a seconda del tipo di progetto e del sistema operativo del contenitore, ecco le diverse combinazioni:

Tipo di contenitore Punto di ingresso
contenitori Linux Il punto di ingresso è tail -f /dev/null, e rappresenta un'attesa infinita che mantiene il contenitore in esecuzione. Quando l'app viene avviata tramite il debugger, è il debugger responsabile dell'esecuzione dell'app, ovvero dotnet webapp.dll. Se avviato senza eseguire il debug, la strumentazione esegue un docker exec -i {containerId} dotnet webapp.dll per avviare l'app.
contenitori di Windows Il punto di ingresso è simile a C:\remote_debugger\x64\msvsmon.exe /noauth /anyuser /silent /nostatus che esegue il debugger, quindi è in ascolto delle connessioni. Questo metodo si applica quando il debugger esegue l'app. Quando viene avviato senza eseguire il debug, viene usato un comando docker exec. Per le app Web .NET Framework, il punto di ingresso è leggermente diverso in cui ServiceMonitor viene aggiunto al comando.
Tipo di contenitore Punto di ingresso
contenitori Linux Per .NET 6 e versioni successive, il punto di ingresso è dotnet --roll-forward Major /VSTools/DistrolessHelper/DistrolessHelper.dll --wait. Per .NET 5 e versioni precedenti, il punto di ingresso è tail -f /dev/null. Questi processi usano un'attesa infinita per mantenere il contenitore in esecuzione quando l'app non è in esecuzione. Quando l'app viene avviata, con o senza debug, è il debugger responsabile dell'esecuzione dell'app (ovvero, dotnet webapp.dll) e del mantenimento in esecuzione del contenitore.
contenitori di Windows Il punto di ingresso è simile a C:\remote_debugger\x64\msvsmon.exe /noauth /anyuser /silent /nostatus che esegue il debugger, quindi è in ascolto delle connessioni. Per le app Web .NET Framework, il punto di ingresso è leggermente diverso in cui ServiceMonitor viene aggiunto al comando.

Il punto di ingresso del contenitore può essere modificato solo nei progetti Docker Compose, non in progetti a contenitore singolo. Consultare le proprietà di Docker Compose - Personalizzare il processo di avvio dell'app.