Я пытаюсь создать и запустить контейнер из моего метода службы REST. Моя служба REST находится на машине Unix, и из внешних систем потребуется несколько запросов для настройки и запуска нескольких контейнеров докеров в машине, используя мою службу REST, которая также находится на той же машине.Создание случайных неперекрывающихся портов привязки докеров
Мой вопрос в том, как я могу определить, на каком порту я могу запустить свой контейнер. Каждый запрос к моему методу REST должен запускать контейнер на уникальном порту, который не использовался в предыдущих запросах. Если я создаю случайный номер порта, мне нужен какой-то способ гарантировать, что тот же номер не будет восстановлен, иначе он создаст конфликт порта.
Мне нужно генерировать случайный номер порта каждый раз, не повторяясь, где-то хранить список использованного порта и проверять список каждый раз, когда я генерирую случайное число, чтобы убедиться, что порт не был использован, отпустите порт, когда контейнер остановлен (обновите список «ports-in-use», чтобы удалить остановленный контейнер). любая идея о том, как это сделать в Java? Заранее спасибо
Любых указателей о том, как мы проверяем первый доступный порт в диапазоне? – user1722908
Поскольку вы сохраняете список занятых портов. Вы можете прокручивать этот список, чтобы найти первое отверстие в цепочке (сначала пустое) или следующий доступный порт, если цикл достиг конца списка портов –