всеми сервисами запускать?
Я так и написал traefik или envoy. Запилить обнаружение сервисов сворма , и пусть сами апстримы добавляются
Это кстати можно наверно в CI запилить, подумаю
Ещё идея. Если есть в сворме какой-то DNS сервер, который резолвит имена контейнеров в ИП адреса. То можно в nginx указать в качестве resolver этот DNS сервер. Тогда задача вообще решается одной опцией в nginx
Звучит круто! Но наверно для меня пока сложновато такое организовать) Попробую поискать как такое делать, полезно на будущее)
Вообще пишут что резолвер встроен в каждый контейнер The container's built-in resolver intercepts the DNS queries on 127.0.0.11:53 and sends them to Docker Engine's DNS server. В таком случае достаточно поднять контейнер в сворме, который пробрасывает все пакеты в 127.0.0.11:53. тот же haproxy или nginx (udp stream) Вот вы и получите такой DNS сервер. Дальше добавляете его ИП адрес в опцию resolver в nginx. И все , можете добавлять в апстримы по именам
звучит просто огонь!
Да, только естественно все ИП адреса контейнеров сворма, с хоста где вы будете запускать nginx, должны быть доступны. Ну я так понимаю эта задача уже решена
Обсуждают сегодня