качестве транспорта использую TCP.
Заворачиваю микросервис в докер, в докерфайле экспозирую тот же порт, на котором работает микросервис, через компоуз пробрасываю этот же порт наружу.
В результате микросервис остается недоступен извне. Почему?
Сам по себе микросервис рабочий и отвечает на команды, тесты проверяющие его работоспособность - проходят.
А извне это из другого сервера? Типа в мир не доступен? Тогда уже беда не с сервисом. Настрой нджинкс
Извне - из другого контейнера, типа гэйтвэй Я просто возможно слабо знаком с матчастью касаемо сетей и тд
Тогда это уже с докером, тут не помогу
Лады, пойду в докерчат😅
Скрин компоуз файла пришлите
Там теперь другая проблема, почему то при запросе с основного приложения выдается ERROR [ExceptionsHandler] connect ECONNREFUSED 172.18.0.2:49001 Хотя оба приложения находятся в одной сети (caddy)
пробовал вообще убирать порты и делать network_mode: host , энивэй
Во-первых, не нужно обращаться к докер приложению через докеровский хост 172.18.0.2 Делайте это через апишник самого сервака или лучше хостнейм , но добавьте hostname: name поле (или просто name, уточните) в конфиг Если нетворкмод хост, то можно просто через localhost спокойно обращаться. Но здесь вроде бы сама сеть caddy и не нужна, вроде бы у меня ломалось, когда мод хост, да ещё external network а параллель было И если ничего не поможет, просто снесите докер и докеркомпоуз и поставьте с официального сайта заново их. Иногда, если докер установлен не пойми откуда бывают тоже приколы + приколы могут быть, если вы с настройками сети что-то особенное мудрили
А я и так по алиасу обращаюсь, ms.python, айпишник уже сам подставляется такой, по всей видимости
А вот когда делаю нетворкмод хост и пытаюсь обратиться к указанному порту - получаю ошибку выше
К локалхосту
С другого контейнера, правильно?
Сейчас нет, просто с запущеного приложения на хосте
Обсуждают сегодня