Petr
Petr
Petr
но скорее всего ты столкнешься наверное с проблемой мульти сетей
Petr
на одном сервере хочешь запускать? Можно порты поменять которые наружу выходят
Petr
лучше скинь сразу docker-compose.yml
Petr
docker-compose все что делает это поднимает контейнеры описанные в текущей папке, в текущем файле docker-compose.yml
Anonymous
Petr
перемести в другую папку он создаст еще, с условием если имена контейнеров не будут повторяться
Petr
так ты пробрасываешь порты все наружу, я бы так не делал, но может оно тебе так надо. Поэтому можешь поднять еще такие же контейнеры в другой папке, название папки поменяй, поменяй порты
Petr
а вообще у тебя приложение предусматривает проброс портов базы данных наружу?
Anonymous
Вроде бы так это работает, насколько я понимаю.
Petr
а я туплю, порты тебе менять не надо
Petr
нужны уникальные названия
Petr
да
Anonymous
Да, потому что docker-compose.yml делает нечто вроде name mangling в пределах проекта.
Petr
хотя я уже сам запутался за целый день с этим докером
Petr
вообще для dev и прод я бы сделал, может это и не бэст практис, но такой уже у меня стоит. Экспозится nginx 80 порт у веб приложений и api, с расписанными путями и поддоменами, внутри конейнеры общаются по name, объедены все в одну сеть, есть контейнер с openvpn, с портом наружу и заранее вбитыми учетками, его порт тоже экспозится наружу для доступа во внутреннюю сеть этих контейнеров, только общаешься по айпи, можно в хостс конечно прописать наверно имена.
Dmitry
Раньше был extends в docker-compose файлах. https://docs.docker.com/compose/extends/#extending-services
Полез за документацией, и увидел что его убрали в 3+ версии. Если у вас что-то ниже, можете попробовать воспользоваться им. Как костыль, предлагают дробить docker-compose.yml на куски и подкидывать их в docker-compose через множественный -f.
Anonymous
В общем сделал я shared PG и shared ES instances.
Anonymous
https://stackoverflow.com/a/24326540/571465
Вот этот пост на stackoverflow помог.
Anonymous
Просто в отдельной директории создал отдельный docker-compose.yml, там поднял нужные общие сервисы. Задал container_name обоим, пробросил порты наружу и подсоединяюсь из моего проекта по IP хост-машины.
Anonymous
В общем идея ясна. Такое достаточно легко делается.
Petr
Порты разные сделал?
Petr
У хост машины как понимаю один ip
Petr
👍
Anonymous
Порты разные сделал?
Гм, не совсем понял вопроса, но да. И у PG, и у ES сменил порты с дефолтных. Пробросил их наружу в хост-машину.
Petr
А ну вот я о том
Petr
Это первый предложенный вариант
Petr
Кстати а что мешает все в один Докер композ запихать? Чтобы у них не было коллизии между собой?
Anonymous
Anonymous
Ну тоже вариант кстати.
Anonymous
docker-compose.yml в пределах всей VPSки грубо говоря.
Petr
Ну сам решай как удобно
Petr
У меня в основном мини сайтики api. Все через nginx один 80 порт дышит и openvpn
Petr
Мне так удобнее. Только вот разделить по сетям не получается
Oleg
кто-нибудь использует какой-нибудь load-balancer для grpc? dockercloud/haproxy с tcp что-то не завелся для этих целей. Что посоветуете?
Oleg
сорян, протупил. Все пашет
Vladimir
Aleksey
господа поясните за https://docs.docker.com/engine/swarm/configs
это ведь статические конфиги. как эти стические конфиги оживить ?
Aleksey
выглядит так будто там нет такой возможности вовсе. пожтмоу кажется что опять на выручку приходит consul-template и конфиги на самом деле будут не для сервиса а для консул темплейта а консул темплейс уже будет фигачить конфиг сервиса
Aleksey
но это как то.... криво ?
Aleksey
понятно. опять замануха он докера с заглушкой на будущее
Roman
не совсем понятно, чего ты от этого хочешь
Roman
менеджер динамических конфигов? а кто будет принимать решения?
Aleksey
я хочу что бы кто то писал секцию upstream в nginx
Aleksey
грубо
Roman
на основе чего?
Aleksey
на основании запущенных сервисов
Roman
аа понял
Roman
ну да, это не оно. нужен консул
Aleksey
консул есть. :)
Roman
дай апстримам имена
Roman
и используй их
Aleksey
там есть имена конечно. но зхадачу дискавери это не решает. к тому же говорю нжинкс выбран для примера.
Roman
ну я понял, поднял еще один апстрим - хоп и в клнфиг добавилось
Roman
мы это решали проксей
Aleksey
ну ага. или переменную окружения отрендерить в конфиге
Aleksey
такое вот
Roman
ну да, пока нет решения искаропки
Aleksey
ну короче опять консул темплейт :) и envsubst
Aleksey
как же это уже...
Aleksey
2017 год такой
Denis
там он умеет конфиг генерить из шаблона, который в свою очередь из консул темплейта собирается самим номадом
Aleksey
у меня проект. народ ставить может проект в чо попало. часть я эксплуатирую. часть нет.
Denis
оукей.
Aleksey
http://www.opennet.ru/opennews/art.shtml?num=47718
Aleksey
больше контейнеров
Aleksey
ну они видимшь предлагаю ряд моментов.
Aleksey
ksm очень не хватает докеру
Gleb
Для уменьшения потребления памяти применяется механизм DAX (прямой доступ к ФС в обход страничного кэша без применения уровня блочных устройств), а для дедупликации одинаковых областей памяти применяется технология KSM (Kernel Shared Memory), что позволяет организовать совместное использование ресурсов хост-системы и подключить к разным гостевым системам общий шаблон системного окружения.