
Kirill
15.09.2016
13:45:54
Я без всякого пакера собирал docker image с помощью ansible

Andrew
15.09.2016
13:46:04
поставить докер, консул, подтюнить sysctl, поставить ntp. что еще надо? )

Kirill
15.09.2016
13:46:15
но полезность этой задачи под вопросом

Dmitrii
15.09.2016
13:46:59
Дело в том, что мне тут еще надо вагрантбоксы собирать одновременно, там воркфлоу не поменять никак.

Google

Kirill
15.09.2016
13:46:59
Собирал — читай запускал ansible внутри базового image и гнал в нем плейбуки, потом сохранял полученные слои

Dmitrii
15.09.2016
13:47:10
Так что пакер выглядит юзабельным решением

Artur
15.09.2016
13:47:51
да вроде нет?
http://developers.redhat.com/blog/2016/09/13/running-systemd-in-a-non-privileged-container/

Andrew
15.09.2016
13:48:03
ага

Dmitrii
15.09.2016
13:48:51
Может есть какая замена пакеру?

Andrew
15.09.2016
13:49:14

Dmitrii
15.09.2016
13:49:50
Перечитай выше проблемы что я описал

Andrew
15.09.2016
13:50:05
ну chroot и ансибл

Dmitrii
15.09.2016
13:50:12
У пакера есть amazon-chroot. И на Ubuntu 16.04 не собрать php

Andrew
15.09.2016
13:50:13
с чрутом у тебя не пакер виноват

Dmitrii
15.09.2016
13:50:48
Все кроме ансибла для нас будет оверкил

Google

Andrew
15.09.2016
13:50:57
баш скриптики!

Dmitrii
15.09.2016
13:50:59
Папет кусок говна, чеф тоже.

Andrew
15.09.2016
13:51:05
в тыщу раз лучше ансибла
при условии иммутабельных окружений, конечно
а у вас такое как раз!
ну и таки диплой не амишками, а контейнерами, но это как знаете, конечно

Dmitrii
15.09.2016
13:51:55
Я конечно люблю баш скриптики, но очень хорошо осознаю сколько их там будет. Так что — нет

Andrew
15.09.2016
13:52:15

Dmitrii
15.09.2016
13:52:29
Просто сайт.
Ну, не один конечно.

Andrew
15.09.2016
13:52:48
ну apt-get install && mkdir blabla
что еще там?

Dmitrii
15.09.2016
13:53:00
А темплейты че?
Параметры и группы?
Какое-то велосипедостроение. Ансибл отлично работает.

Andrew
15.09.2016
13:53:28
консул + терраформ

Dmitrii
15.09.2016
13:53:33
И проблема вообще не в нем

Andrew
15.09.2016
13:53:50
ансибл никогда отлично не работает и не будет работаеть, кусок админского говнософта для yml-лудитов, простите )
никакой пользы он человечеству не приносит )

Google

Andrew
15.09.2016
13:54:40
у вас сборка и конфигурирование приложения сейчас в одном месте

Dmitrii
15.09.2016
13:54:45
Бля да какая разница башскриптами или ансиблом
Я реально не понимаю

Andrew
15.09.2016
13:54:51
а вот если бы она была разделена — было бы проще
а так в целом поддерживаю!

Dmitrii
15.09.2016
13:57:22
Но зачем мне целый консул и терраформ?
Не мне ж дному с этим работать.
С ансиблом у нас даже джуниор может работать

Andrew
15.09.2016
14:00:09
в декларативные системы как раз не страшно пускать "джуниоров"
а вот в императивные — ой ой!

Dmitrii
15.09.2016
14:00:49
Я бы не назвал ансибл декларативным.
Так или иначе ты указываешь порядок вызова модулей, их параметры.
Тоже самое, если бы ты вызывал функции в башскриптах

Andrew
15.09.2016
14:03:37

Dmitrii
15.09.2016
14:04:18
А, ты сравнивал с терраформом.

Andrew
15.09.2016
14:07:53
ага. в общем, повторюсь, как будто бы, у вас объединен процесс сборки и конфигурирование, что мне, кажется, порочным. Это не только усложняет процесс билда (все эти ансиблы со знанием об окружении), но и лишает вас такой важной фичи как возможность прогнать один и тот же образ через разные окружения (тем самым хоть как-то проверить, что там этот ансибл насобирал)
тест -> qa -> продакшен
тот же нетфликс хоть и деплоится амишками, но настраивает их при старте

Dmitrii
15.09.2016
14:10:45
А что если у меня для дева чуть разный конфиг?

Google

Dmitrii
15.09.2016
14:10:56
Если вполне реальные юзкейсы когда это необходимо.
В продакшен такие куски тянуть ну вообще не вариант

Dmi3y
15.09.2016
14:17:39
Много вы про терраформ пишете, и вообще hashi хорошие штуки делают, судя по всему. Что про otto скажете?
Как он для разработки в докере, подходит?

Andrew
15.09.2016
14:21:37
отто умер

Dmi3y
15.09.2016
14:35:36
Не прижился? Не развивается? Не нашлось сценария использования?

Andrew
15.09.2016
14:37:38
нет, умер
натурально
страшной смертью, в раннем возрасте, родители его пережили
Собственно, на сайте проекта все написано https://www.ottoproject.io/ ;)

Dmi3y
15.09.2016
15:11:07
Осознал, спасибо. Поэтому и не видел давно упоминаний

Alexander
15.09.2016
15:19:22
вышла новая версия Rkt, https://github.com/coreos/rkt/blob/master/CHANGELOG.md

Paul
15.09.2016
15:20:07
а кто-нибудь использует в продакшне кореос и ркт?
есть кейсы?
желательно - не в разработке а с реальной нагрузкой

Alexander
15.09.2016
15:21:42
я использую пока только Rkt, нагрузка у меня очень слабая
CoreOS это для облаков

Paul
15.09.2016
15:22:22
я знаю, потому и спрашиваю

Alexander
15.09.2016
15:22:44
хостинг мелких сайтиков на CMS, 100-5000 заходов в день

Google

Alexander
15.09.2016
15:23:01
средняя нагрузка на процессор < 10%

Paul
15.09.2016
15:23:03
действительно немного
я понял, спасибо

Тефтеля
15.09.2016
18:26:32
да и вообще оркестрация это больная тема)
я лично все максимально автоматизировал. Например, при выкате у меня поднимается резерв стек, и основа апгрейдится, дальше CD смотрит в специальный локейшен и если хеш коммита, прочая системная инфа в порядке, то гасит бекап стек, если нет откатывает все.

Aleksandr
15.09.2016
19:49:15
друзья, а как в сворме удалить остановленные контейнеры?
https://docs.docker.com/engine/swarm/swarm-tutorial/rolling-update/
вот которые redis:3.0.6

Alexander
16.09.2016
04:49:41
docker rm $(docker ps -a --filter status=exited -q)
еще по redis надо отфильтровать, а то удалите все остановленые контейнеры

Aleksandr
16.09.2016
06:46:35

Alexander
16.09.2016
06:48:55
Ага.

Aleksandr
16.09.2016
06:49:50
Какая-то тогда оркестрация так себе получается. Если все равно надо на каждую ноду заходить..

Alexander
16.09.2016
06:51:41
Пока никакой ))

Ioannes
16.09.2016
09:51:38
С кокпитом проще
declare -a arr=("server.1" "server.2")
for i in "${arr[@]}"
do
eval "$(docker-machine env $i)"
docker rm $(docker ps -a --filter status=exited -q)
done
Простите, что так поздно влючился в диалог )
На баше скриптец, запускать по надобности