¿Por qué se inicia aspnet core en el puerto 80 desde Docker?
TL; DR: ¿Por qué se ejecuta una aplicación aspnet core en el puerto 80 desde una imagen de Docker, pero 5000 fuera de una imagen de docker?
Elaborar
Revisé el tutorial de aspnet core / docker que se encuentra aquí:https://docs.microsoft.com/en-us/dotnet/core/docker/building-net-docker-images
A la mitad de la página, comienzo la aplicación con lo siguiente según lo prescrito:
dotnet run
Entre otras cosas, esto imprime esto:
Now Listening on: http://localhost:5000
Excelente. Eso es lo que esperaba. Lo siguiente en el tutorial es iniciar exactamente la misma aplicación desde una imagen de Docker.
docker build -t aspnetapp .
docker run -it --rm -p 5000:80 --name aspnetcore_sample aspnetapp
Esto resulta en
Now listening on: http://[::]:80
Espere. Wat?¿Por qué la aplicación aspnet core se ejecuta en el puerto 80? Se estaba ejecutando en el puerto 5000 cuando lo ejecuté directamente desde la máquina. No hubo cambios en el archivo de configuración.
Sospecho que tiene algo que ver con las imágenes base de la ventana acoplable, pero todavía no tengo la habilidad suficiente en la ventana acoplable para rastrear esto.