
Roman
26.11.2017
05:24:13

namanalogovnetu
26.11.2017
13:38:41
всем привет! я новичек в docker.
В общем как я понял docker compose используется для запуска нескольких контейнеров сразу. К примеру у нас микросевисное приложение и нам нужно запустить 3 контейнера с приложением, 2 с бд , 1 с балансером и 2 для воркеров.
В общих чертах я правильно понял ?
Если проводить аналогию абстракций с Ansible, то compose это playbook который в себя куча ролей ( контейнеров)

Алексей
26.11.2017
13:39:23
да только не надо запускать базы для прода в докере.

Phil
26.11.2017
13:39:33

Google

namanalogovnetu
26.11.2017
13:40:23
это почему ?
я если честно планировал по старинке нарезать виртуалок на VMWare. Спрятать в трех ДЦ за 1 балансером. но заказчик хочет докер.

Алексей
26.11.2017
13:41:22
а. ну раз хочет чо не то
эксплаутировать то самзаказчик будет поди

namanalogovnetu
26.11.2017
13:42:04
так почему не стоит бд в проде

Алексей
26.11.2017
13:42:20
согласно доке докера же
тесты и такое вот всё велкам
а базы нини
и прод нини

namanalogovnetu
26.11.2017
13:42:53
докер в проде нини ?

Алексей
26.11.2017
13:43:09
докер для прода баз нини

namanalogovnetu
26.11.2017
13:43:14
есть пруф ?
ааа

Google

namanalogovnetu
26.11.2017
13:43:28
а ну все равно шлепни ссылочку пожалуйста
обчитаю ее полностью

Алексей
26.11.2017
13:43:52
влом. слишком легко ищется

namanalogovnetu
26.11.2017
13:44:13
нашел

Phil
26.11.2017
13:44:17
а базы нини
Чушь какая-то. Спокойно работают базы в докере

Алексей
26.11.2017
13:44:26
чего бы им не работать.
базы то работают. а толку нет.

Ruben
26.11.2017
13:44:48
О.о
а конкретнее?

Алексей
26.11.2017
13:45:01
а конекретнее что вы хотите от докера ?

namanalogovnetu
26.11.2017
13:45:03
https://news.ycombinator.com/item?id=13582757

Алексей
26.11.2017
13:45:10
от докера хотят простой переезд
хоп переподнял и все работает
но базы они имеют вольюмы и их надо таскать

namanalogovnetu
26.11.2017
13:45:36
услышано.

Алексей
26.11.2017
13:45:44
а тут докер хоп и не помогает

namanalogovnetu
26.11.2017
13:46:04
софт бд в контейнер завернуть. вольюмы отдельно монтируются
так ?

Google

Алексей
26.11.2017
13:46:36
есть у тя всё на одном хосте то и базы в докере норм чо
просто когда у тя проблемы с докером есть только одно решение.
добавь нод.
добавил нод и у тя всё равно проблемы ? снова добавь нод.
впрочем я конечно пугаю да.

Phil
26.11.2017
13:48:22
от докера хотят простой переезд
Поздравляю. Ну это не работает. А заметание под ковер работает. И реплика простая с докером. Ну короче, я ссылку почитал - вода какая-то и чушь про мифический стейтлесс

Алексей
26.11.2017
13:50:56
дак фил ты будто первый день на этом канале

namanalogovnetu
26.11.2017
13:59:41
Спасибо за комментарий Фил.
я блин не могу чот догнать. Допустим исходный код одного модуля обновился.
Мне нужно что убить контейнер и создать новый ?
Или нужно зайти в контейнер и сделать git pull & restart ?
Как мне кажется это зависит от политики доставки. К примеру я ее определяю ...в общем каша сейчас в голове.
Короче разделяю и властвую. В докере у меня будет пред настроенное окружение. А все манипуляции буду делать ansible'ом. Верно ?
я понимаю, что с практикой все встанет на свои месте, но блин мне это нужно сделать сегодня )) поэтому возможно буду глупости всякие нести

Алексей
26.11.2017
14:26:26
контейнеры незменны.
изменился код контейнера собери новый

namanalogovnetu
26.11.2017
14:26:54
далбаебизм.
к примеру один из сервисов у меня nginx который смотрит наружу
я докером поднимаю nginx образ
и ансиблом накатываю туда конфиг
верно ?

Алексей
26.11.2017
14:27:38
не долбоебизм а подход

Igor
26.11.2017
14:28:23
конфиг чего nginx?

namanalogovnetu
26.11.2017
14:28:26
сорри за мат

Evgeny
26.11.2017
14:28:31
Представь себе докер контейнер как бинарь в котором зашиты настройки

Google

namanalogovnetu
26.11.2017
14:28:32
да конфиг nginx

Igor
26.11.2017
14:28:34
лучше mount c наружи

namanalogovnetu
26.11.2017
14:28:50
во это другое дело

Evgeny
26.11.2017
14:29:00
И теперь подумай - будешь ли ты патчить бинарь (в памяти, упаси боже) или просто перезаупстишь его ?

namanalogovnetu
26.11.2017
14:29:09
Кривая аналогия бро

Admin
ERROR: S client not available

Evgeny
26.11.2017
14:29:10

Igor
26.11.2017
14:30:02
ну как бы... просто если у тебя все это запускается в кластере k8s то mount очень не удобно

Evgeny
26.11.2017
14:30:28

namanalogovnetu
26.11.2017
14:30:29
О Игорь видел помоему ваше выступление на ютубе

Igor
26.11.2017
14:30:30
и тогда конечно собираем новый контейнер
правильно
Возможно

namanalogovnetu
26.11.2017
14:30:42
Смотрю лицо знакомое
Значит подведем итог

Igor
26.11.2017
14:31:24
конейтер как бинарный файл - хорошая и правильная аналогия.
Но как воркараунд можно прокинуть конфиг

namanalogovnetu
26.11.2017
14:31:26
я "пакую" контейнер и запускаю его на сервер.
Если что-то изменилось. я пакую новый контейнер и быстро-незаметно подмениваю им старый
или стоп

Igor
26.11.2017
14:32:10
тебе в продакшене?

namanalogovnetu
26.11.2017
14:32:21
при запуске контейнера я ведь могу настроить обновление кода из репо

Google

namanalogovnetu
26.11.2017
14:32:23
да в проде

Evgeny
26.11.2017
14:32:23

Igor
26.11.2017
14:32:25
кол-во серваков какое?

namanalogovnetu
26.11.2017
14:32:54
физически 1 сервер

Igor
26.11.2017
14:32:57
ок
правильно делать так

namanalogovnetu
26.11.2017
14:33:20
заказчик хочет сервисы засунуть зачем то в контейнеры мотивируя "идем в ногу со временем"
слушаю

Evgeny
26.11.2017
14:33:37
Заказчик умный, будь как заказчик

namanalogovnetu
26.11.2017
14:33:55
Evgeny да патчил я на лету ? и в ring 3 и в ring 0, особенно в ring0

Igor
26.11.2017
14:34:00
1. на каждое изменение конфига собирается новый контейнер
2. Запускается docker service c репликой >2

Evgeny
26.11.2017
14:34:30

namanalogovnetu
26.11.2017
14:34:47
это единственный выход. ну если не считать патчинг ядра при его загрузке

Igor
26.11.2017
14:34:51
3. при деплои новой версии ты делаешь service (update) и он подменяет контейнеры поочереди

namanalogovnetu
26.11.2017
14:34:59
хм

Igor
26.11.2017
14:35:29
если ansible сделать конфиг который ты пробросишь и 1 контейнер - получишь downtime при деплое