@PhillipScottGivens, возможно, вы уже знаете, но порт 5001 используется для запуска приложения с использованием SSL (https) по умолчанию. Я понимаю вашу первоначальную путаницу, хотя, как указывает ответ, ASPNETCORE_URLS определяет порт, на котором приложение слушает

R: Почему основное приложение aspnet работает на порту 80 из образа Docker, а 5000 - вне образа Docker.

Разрабатывать

Я прошел учебник по ядру / докеру aspnet, найденный здесь:https://docs.microsoft.com/en-us/dotnet/core/docker/building-net-docker-images

В середине страницы я запускаю приложение, как указано ниже:

dotnet run

Среди прочего, это печатает это:

Now Listening on: http://localhost:5000

Отлично. Это то, что я ожидал. Следующая вещь в учебнике - запустить точно такое же приложение из образа Docker.

docker build -t aspnetapp .
docker run -it --rm -p 5000:80 --name aspnetcore_sample aspnetapp

Это приводит к

Now listening on: http://[::]:80

Подождите. Wat?Почему основное приложение aspnet работает на порте 80? Он работал на порту 5000, когда я запускал его прямо с машины. Не было никаких изменений файла конфигурации.

Я подозреваю, что это как-то связано с базовыми образами докера, но я еще не достаточно разбираюсь в докере, чтобы отследить это.

Ответы на вопрос(1)

Ваш ответ на вопрос