Задать вопрос
@Who_R_U

Как развертывать приложение в отдельных контейнерах с пробросом портов?

При развертывании контейнеров с postgres (-p 5433:5432) и служебного приложения app1 (docker run --net=host ..) служебное приложение способно подключиться через localhost:5433. Если после этого развернуть контейнер app2 с Tomcat с war на борту (docker run --net=host ..) к приложению нет доступа извне ни по какому порту (стандартный 8080). -p не работает при ключе --net.

Если создать свою docker network networkid и запускать каждый контейнер в этой сети, то app1 не видит localhost:5432 (-p не работает при --net)

Если развернуть приложение app2 без ключа сети, но с -p 80:8080 приложение запустится, но не увидит localhost:5433 так как они находятся в разных сетях без использования --net.
  • Вопрос задан
  • 129 просмотров
Подписаться 1 Простой 3 комментария
Помогут разобраться в теме Все курсы
  • Яндекс Практикум
    Java-разработчик
    10 месяцев
    Далее
  • Skillfactory
    Профессия Java-разработчик
    14 месяцев
    Далее
  • Нетология
    Java-разработчик с нуля
    12 месяцев
    Далее
Решения вопроса 1
не localhost, а имя докер-сервиса
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
igordance
@igordance
А docker-compose нет возможности использовать? Очень упращает настройку взаимодействия между контейнерами
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы