Как организовать локальный hosts с портами для разработки сайтов в docker?
Как и чем лучше , настроить у себя окружение для разработки сайтов?
Имеются контейнеры, у всех свои порты для nginx, внутри приложений по умолчанию 80 или 443, они не знают какой наружный порт, и например переадресация в браузерах по умолчанию идет на 80 или javascript отрабатывает только по имени сайта без порта.
какой поставить у себя прокси по имени локально, с 80/443 на любой порт, тоже nginx поднять локально? или есть какие-то другие средства, легкие, без лишних конфигов?
macos/linux
Сергей Горностаев, разные версии пакетов, причем тут это? мне нужно разруливать порты, как вариант все на 80, но если 2 проекта одновременно то , проксировать нужно
AgentSmith72, "Все проекты стягивайте в директорию с папкой docker." что это означает.
на каждый проекта свой docker-compose, у каждого своя сеть, у каждого свой веб-сервер отдает порт http - любой либо 2-3 порта(ssl, ws).
я понимаю так, что нужно локально теперь разруливать(проксировать) any_host:80 на any_host:XXX1, any_host:XXX2 и д
dzhunior, очевидно, раз вы не владеете тонкостями docker, то и нет смысла делать разные сборки docker, под разные проекты в локальной среде.
"Все проекты стягивайте в директорию с папкой docker." что это означает.
Сделайте одну сборку docker. И в ней конфиги nginx для каждого конкретного проекта. Сайты будут доступны не по номеру порта, а по имени, указанном в etc\hosts.
AgentSmith72, Зачем и для чего? если у каждого проекта свой докер, там проекты все разные и пакеты разные, и фронт, и бэк разные и куча всего?
какие тут тонкости нужно еще знать, я просто спросил про порт, какие есть варианты проксирования, какие-то тонкости указываете. я же говорю 10-ки проектов с различными node, php и прочий зоопарк.
я могу остановить один докер-композ и запустить другой, но нужно и два проекта одновременно запустить.
я могу через локальный NGINX проксировать, но подумал может есть что-то проще, вот и весь вопрос.
dzhunior, если на локалке, то можете хоть все сразу запустить. Одного контейнера достаточно.
В докере у вас должно быть все что нужно этим проектам. Вы когда работаете с одним проектом из всех открытых, этот процесс и работает в контейнере. Переключитесь на другой проект, это уже новый процесс на сервере и т.д. Количество одновременных процессов зависит от характеристик железа.
То что версии пакетов разные это уже другой вопрос. Обычно на локалке все проекты одной сборки и связываются с одним конфигом докере.