George
детали
George
все дело в деталях
I
вы видимо не читали моё сообщение
I
там делай достаточно
George
https://t.me/docker_ru/141544 - вот это не очень конкретное. А было еще? 😞
George
уехало наверх, ога
Oleksandr
ребята, привет я только начинаю свою работу с докером. помогите решить проблему у меня есть докер контейнер с апкой (его создавал не я). она поднимается на определенном хосту:порту и этот хост:порт доступны мне вне контейнера, например в браузере я отдельно поднимаю контейнер с тестами (его создавал я), натравленными на эту апку, но контейнер этот хост:порт не видит как это порешать?
Oleksandr
В сеть свяжи
а можно конкретнее?
central
Timur
а можно конкретнее?
Docker-compose тоже можно
Oleksandr
понял. буду разбираться. спасибо!
Рашид
docker network —help
а —link не подойдет?
a1eXei
Объединяйте контейнеры в одну сеть
Cyclone
Ребят, есть два разных docker-compose. В одной поднимается БД (монго). Как к ней подключиться из приложения, запускаемого в другом docker-compose? Объединил в одну сеть через 1. docker netowork create mynetwork 2. networks: mynetwork: external: true в корне обоих docker-compose 3. networks: - mynetwork в docker-compose у БД и у приложения во втором docker-compose Но приложение всё равно не видит БД. ... и я не вполне уверен, как дать ссылку на БД - как узнать хост?
George
Просто я видел этот вопрос
Cyclone
Монга не на 127.0.0.1 слушает ?
Вообще это docker toolbox, так что всё на 192.168.99.100. Вот сейчас web-приложение там работает и с БД общается, но сама БД мне извне не видна. Она же во внутренней сети, которую создаёт сompose...
Cyclone
Ну, монгу можно через ports опубликовать наружу
вот я как раз собираюсь это попробовать
George
вот я как раз собираюсь это попробовать
Попробуй 🤷‍♂делов на 5 минут
Cyclone
Что за СУБД для которой надо больше одного контейнера?
СУБД обычная. Есть web-приложение со своей БД (монго) - у них всё хорошо, они запускаются в одном docker-compose. Мне нужно сделать доп. утилиту вне этого docker-compose, и в ней обратиться к этой БД.
Cyclone
Ну, монгу можно через ports опубликовать наружу
С открытым портом видит... но networks, как я написал выше, не решают эту проблему без открытия портов вовне?
George
Вылей композы на пейстбин. Кажется, уже почти ясно, в чем дело )
George
монга одна )
Значит нет (
Cyclone
И под названием сервиса ты имеешь в виду название контейнера?
George
И под названием сервиса ты имеешь в виду название контейнера?
Нет, название сервиса - то что в компоузе написано
Cyclone
а
Cyclone
Нет, название сервиса - то что в компоузе написано
Возможно, я неправильно обращался к БД (по IP, а не по service name), сейчас ещё повожусь...
Nan0
какой командой кто проверяет членство в группе после запуска сессии заново? Log out and log back in so that your group membership is re-evaluated. getent group docker getent group sudo или просто groups/sudo groups?
Nan0
Никак, работает и норм 🤷‍♂
блин, хотелось как-то технически это проверить
Nan0
а то в инструкции не указано, но подразумевает какую-то команду
George
а то в инструкции не указано, но подразумевает какую-то команду
Обычно сразу видно - заработал докер клиент или нет
Nan0
Обычно сразу видно - заработал докер клиент или нет
сразу видно после запуска команды: docker run ... ?
Nan0
если я перезапущу сессию, то в терминале всё сотрется
Nan0
Блин. Тебе что нужно ?
хочу просто знать, добавлен ли юзер в группу. исходя из пункта док-и: Log out and log back in so that your group membership is re-evaluated.
George
Я повторяю, что если речь добавить юзера к докер группе, то сразу эффекта нет (надо перелогиниться), но после перелогина клиент начинает работать - это достаточно, чтобы понять, что тебя в группу добавили
George
Задача какая?
George
Т.е. ты хочешь отловить это до первого перелогина?
George
Типа добавлен, но права не активны!
Nan0
по сути, просто хочу визуально увидеть, что юзер в группе
Nan0
перед началом работы
George
по сути, просто хочу визуально увидеть, что юзер в группе
Ну, это бессмысленно и ответ ты сам дал.
George
В общем, жди минут 30. Поколдую
Nan0
В общем, жди минут 30. Поколдую
я нашел на стеке ответ, но хотел уточнить это то, что мне нужно или нет: https://stackoverflow.com/a/39920592/8370915
Lev
Итак, чтобы собрать и докер в докере и потом запушить это все, надо в контейнер поставить докер и при запуске пробросить сокет. При этом оба докера должны быть одной версии (как это проверить при старте? Каким то скриптом?) При этом сам по себе контейнер в принципе не используется как долгоиграющая вещь а запускается единоразово и каждый раз начисто.
Владимир
Что ты говоришь?
Матрёшка же
George
А как насчёт докер с докер-клиентом и рядом докер с докер демоном. Это и есть настоящий dind. Как его предлагает гитлаб, например. А то, о чем ты говоришь - это всего лишь проброс сокета с хост машины в докер. Т.е. те докеры, которые ты запустишь - они будут контейнерами сиблингами по отношению к тому, в котором докер клиент
George
Касательно версий. Есть версия апи демона. Она должна матчиться с версией апи клиента. Соответствие можешь найти на сайте. Но если мажорная версия та же, то можно иметь разброс в пару версий между ними.
George
Матрёшка же
У коллеги не матрёшка 😂
George
А я написал - это только для сборки контейнеров. Это для CI
Ну, есть разница между dind и пробросом сокета ☺️
Lev
Есть, я понимаю о чем ты. Но, как мне кажется, проброс сокета достаточен...
George
И я лично не вижу сильной боли от докер-в-докере. Ну, медленнее. Но не фатально. Зато голова об именовании контейнеров не болит
George
Есть, я понимаю о чем ты. Но, как мне кажется, проброс сокета достаточен...
От задачи зависит. Но если ты пробросавыешь сокет и запускаешь пайплайн два раза, то, если ничего не делать, у тебя будет конфликт
Lev
Ок, давай рассмотрим. Как сделать тру динд ?
George
Тебе надо, получается, контейнеры именовать как-то в зависимости от пайплайн ID. Это раз. И если что-то где-то зависнет, то будет гемор с зачисткой хврстов
George
Ок, давай рассмотрим. Как сделать тру динд ?
Запускаешь docker:dind в привилегированном режиме
George
Потом к нему можно обратиться из контейнера с докер клиентом (docker:latest).
Lev
А это нормально должно работать на btrfs?
Lev
@gecube
Lev
А то там вроде проблемы с субволюмами какие-то
Lev
Я не понял про докер:динд и докер-клиент...
Lev
Зачем два?