Définir le point d’entrée du conteneur
Un point d’entrée de conteneur est un processus configuré pour s’exécuter lorsqu’un conteneur est démarré.
Visual Studio utilise un point d’entrée de conteneur personnalisé en fonction du type de projet et du système d’exploitation conteneur, voici les différentes combinaisons :
Type de conteneur | Point d’entrée |
---|---|
Conteneurs Linux | Le point d’entrée est tail -f /dev/null , qui est une attente infinie pour maintenir le conteneur en cours d’exécution. Lorsque l'application est lancée via le débogueur, c'est le débogueur qui est responsable de faire fonctionner l'application (autrement dit, dotnet webapp.dll ). S’ils sont lancés sans débogage, les outils exécutent un docker exec -i {containerId} dotnet webapp.dll pour exécuter l’application. |
Conteneurs Windows | Le point d’entrée est similaire à C:\remote_debugger\x64\msvsmon.exe /noauth /anyuser /silent /nostatus , qui exécute le débogueur. Il est donc à l’écoute des connexions. Cette méthode s’applique lorsque le débogueur exécute l’application. Lorsqu’elle est lancée sans débogage, une commande docker exec est utilisée. Pour les applications web .NET Framework, le point d’entrée est légèrement différent où ServiceMonitor est ajouté à la commande. |
Type de conteneur | Point d’entrée |
---|---|
Conteneurs Linux | Pour .NET 6 et versions ultérieures, le point d’entrée est dotnet --roll-forward Major /VSTools/DistrolessHelper/DistrolessHelper.dll --wait . Pour .NET 5 et versions antérieures, le point d’entrée est tail -f /dev/null . Ces processus utilisent une attente infinie pour maintenir l’exécution du conteneur lorsque l’application n’est pas en cours d’exécution. Lorsque l'application est lancée, qu'il soit avec ou sans débogage, c'est le débogueur qui est chargé de faire fonctionner l'application (c'est-à-dire, dotnet webapp.dll ) et de maintenir le conteneur en cours d'exécution. |
Conteneurs Windows | Le point d’entrée est similaire à C:\remote_debugger\x64\msvsmon.exe /noauth /anyuser /silent /nostatus , qui exécute le débogueur. Il est donc à l’écoute des connexions. Pour les applications web .NET Framework, le point d’entrée est légèrement différent où ServiceMonitor est ajouté à la commande. |
Le point d’entrée du conteneur ne peut être modifié que dans les projets Docker Compose, et non dans les projets à conteneur unique. Consultez les propriétés Docker Compose - Personnalisez le processus de démarrage de l’application.