Зачем позволять Docker выбирать порт

Каков вариант использования, позволяющий докеру автоматически выбирать диапазон портов с флагом -P?

Это просто удобство, чтобы вам не нужно было явно передавать определенный порт? Но тогда любая вещь, нуждающаяся в доступе к этой службе, должна знать порт, верно?

Развертывание модели машинного обучения с помощью Flask - Angular в Kubernetes
Развертывание модели машинного обучения с помощью Flask - Angular в Kubernetes
Kubernetes - это портативная, расширяемая платформа с открытым исходным кодом для управления контейнерными рабочими нагрузками и сервисами, которая...
Как создать PHP Image с нуля
Как создать PHP Image с нуля
Сегодня мы создадим PHP Image from Scratch для того, чтобы легко развернуть базовые PHP-приложения. Пожалуйста, имейте в виду, что это разработка для...
1
0
137
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Что касается варианта использования, очень важно позволить докеру автоматически выбирать порт в некоторых случаях, таких как сине-зеленое развертывание на одном хосте.

Например, вы запускаете свой контейнер на AWS ECS и есть один экземпляр EC2, поэтому вы не сможете выполнить сине-зеленое развертывание, в этом случае вы получите сообщение об ошибке, например

service test was unable to place a task because no container instance met all of its requirements. The closest matching container-instance 97d97ce9-967d-49ad-83ad-f4f904aae1f6 is already using a port required by your task. For more information, see the Troubleshooting section.

Вы также можете ознакомиться с этой статьей,

If you have a service with 2 containers (tasks), you need at least 2 ECS container instances because multiple containers can’t run on the same port on the same server, each container is hosted on a separate server. So in order to run multiple containers over the same container instance, we need Dynamic port mapping!

Это в контексте AWS, вы также можете реплицировать в своем случае, развернув несколько сервисов на своем хосте с помощью динамического сопоставления портов.

понимание-динамического-сопоставления-портов-в-amazon-ecs-с-приложением-балансировщиком нагрузки

Это один случай, другой случай может заключаться в том, что вы сможете запускать несколько служб одного и того же контейнера докеров, потому что всем нужен один и тот же порт, что может быть достигнуто с помощью динамического порта.

Другим случаем может быть механизм потоковой передачи Wowza, которому требуется динамический порт или диапазон портов для публикации и получения потока от клиента.

Здесь объясняется динамическое сопоставление портов в случае AWS.

https://aws.amazon.com/premiumsupport/knowledge-center/dynamic-port-mapping-ecs/

Другие вопросы по теме