Compartilhar via


Definir o ponto de entrada do contêiner

Um ponto de entrada de contêiner é um processo configurado para ser executado quando um contêiner é iniciado.

Pré-requisitos

Pré-requisitos

  • Área de Trabalho do Docker.
  • Visual Studio com o ASP.NET e desenvolvimento na Web, carga de trabalho de desenvolvimento do Azure e/ou carga de trabalho de desenvolvimento da área de trabalho do .NET instalada.

Ponto de entrada por tipo de projeto

O Visual Studio usa um ponto de entrada de contêiner personalizado, dependendo do tipo de projeto e do sistema operacional de contêiner, aqui estão as diferentes combinações:

Tipo de contêiner Ponto de entrada
Contêineres do Linux Para .NET 6 e posterior, o ponto de entrada é dotnet --roll-forward Major /VSTools/DistrolessHelper/DistrolessHelper.dll --wait. Para o .NET 5 e versões anteriores, o ponto de entrada é tail -f /dev/null. Esses processos usam uma espera infinita para manter o contêiner em execução quando o aplicativo não estiver em execução. Quando o aplicativo é iniciado, com ou sem depuração, é o depurador que é responsável por executar o aplicativo (ou seja, dotnet webapp.dll) e manter o contêiner em execução.
Contêineres do Windows O ponto de entrada é semelhante a C:\remote_debugger\x64\msvsmon.exe /noauth /anyuser /silent /nostatus que executa o depurador. Portanto, está escutando conexões. Para aplicativos Web do .NET Framework, o ponto de entrada é ligeiramente diferente em que ServiceMonitor é adicionado ao comando.
Tipo de contêiner Ponto de entrada
Contêineres do Linux Para .NET 6 e posterior, o ponto de entrada é dotnet --roll-forward Major /VSTools/DistrolessHelper/DistrolessHelper.dll --wait. Para o .NET 5 e versões anteriores, o ponto de entrada é tail -f /dev/null. Esses processos usam uma espera infinita para manter o contêiner em execução quando o aplicativo não estiver em execução. Quando o aplicativo é iniciado, com ou sem depuração, é o depurador quem é responsável por rodar o aplicativo (ou seja, dotnet webapp.dll). DistrolessHelper monitora o processo do aplicativo e sai com o código de saída do aplicativo quando o processo do aplicativo termina.
Contêineres do Windows O ponto de entrada é semelhante a C:\remote_debugger\x64\msvsmon.exe /noauth /anyuser /silent /nostatus que executa o depurador. Portanto, está escutando conexões.

O ponto de entrada do contêiner só pode ser modificado em projetos do Docker Compose, não em projetos de contêiner único. Confira Propriedades do Docker Compose – Personalizar o processo de inicialização do aplicativo.