Nikita Dwarf
Почему не композом?
Mihail
Ansible как раз композ вроде и умеет
nvkv
умеет
nvkv
docker_service
nvkv
пользуюсь постоянно, шикарная шняга
nvkv
https://devdocs.io/ansible/docker_service_module
yopp
слушайте
yopp
а docker build только на .dockerignore смотрит?
yopp
у меня упорно при сборке не попадает одна папка в контейнер
Evgeny
а она не симлинком ли?
yopp
неа
yopp
drwxr-xr-x 2 teamcity teamcity 4096 Jul 17 09:14 .bundle
yopp
но она есть в .gitignore
yopp
но её нет в .dockerignore
Evgeny
не сталкивался с таким - у меня разные папки в гите и докер игнорах ведут себя ожидаемо
yopp
блядь, мистика
ドドドド
ну попробуй на время сборки убратиь из гитигнор
yopp
есть у меня ещё одно подозрение
yopp
да, блядь
yopp
что за
yopp
это говно действительно похоже использует .gitignore
yopp
ни один артефакт не попал в имадж
Evgeny
о.О
Evgeny
какое говно?
yopp
docker build
yopp
я щас ещё исключу что это симсити такой хуйнёй страдает
yopp
чота ваще мистика
yopp
имадж перестал пересобираться напрочь. даже если в одну из директорий с COPY кидаю новый файл
yopp
патамушта я долбоёб
yopp
:(
yopp
ещё бы я нужную директорию пытался копировать, га
yopp
из нужной всмысле
nvkv
yopp
вот как быть, когда я хочу использовать ONBILD ENV FOO=$BAR/baz в базовом имадже но $BAR задавать в нижнем?
nvkv
Oh wait
yopp
потому что копипаста меня сейчас укусила за жопу
nvkv
я не настоящий сварщик, но по-моему нет
nvkv
у тебя же базовый имидж не пересобирается
nvkv
или нет?
yopp
так это надо будет в build-agrs передавать :(
yopp
у меня 5 вот таких имаджей: https://gist.github.com/y8/50318d8f4953fbb8c66aa80aa18832e4
yopp
5 и 6 точно можно пихнуть в ONBUILD
yopp
но отличается между имаджами только ENV SERVICE_NAME=widget
yopp
так ARG в нижнем слое никак на аргументы верхнего не повиляет-же?
yopp
или повлияет?
yopp
слое == имадже
yopp
блиа
yopp
как-же хочется укусить докероделов местами
ドドドド
как-же хочется укусить докероделов местами
какими именно местами ты собрался их кусать? :)
yopp
это решение вполне себе существующей проблемы
yopp
просто в докере они решили её уёбищно
Pavel
При масштабировании дорого
yopp
пять раз 10 десять минут и уже час
yopp
против 10 минут
Pavel
Тесты гонять например
yopp
для того чтоб катать на стейджинг
yopp
чтоб сразу было видно результат
yopp
fail fast
Pavel
При CI/CD все билдится много раз в день
Pavel
Обязана, иначе можно пропустить регрессионный баг
yopp
тесты прошли, поехали на стейджинг
yopp
ну вот докер решет пробелму «не преустанавливать линкус каждый раз»
yopp
потому что линукс уже есть, в него просто надо положить файлы
Pavel
В теории без докера сложно. Как раз потому что нету слоев и приходится все с нуля перестраивать. А с докером можно очень быстро перебилдить только изменившиеся слои и прогнать тесты.
yopp
и вместо того чтоб плодить вот это: а давайте щас гит дёрнем, а чо у нас на стейджинге сломалось? у меня локально всё работает!
yopp
а тут стянул локально имадж, нажал compose up и посмотрел что конкретно сломалось
yopp
и не надо тянуть тридцать гигов виртуалок
Anonymous
патамушта я долбоёб
@demeliorator запинь это?))
yopp
Anonymous
Хотя это не девопс чатик, тут такой юмор не оценят :(
yopp
@demeliorator запинь это?))
передать опыт молодым поколениям!
Pavel
Это не просто копирование файлов. 1. Копирование файлов 2. Чистка и прогрев кеша 3. Сборка ассетов 4. Накатка миграций Как минимум
Pavel
Даже на пхп проекте этот процесс может минут 5 идти.
Pavel
И если собрался такой контейнер то дальше он за 10 секунд разлетается по девам/стейджам/продам
Pavel
Тут речь не о том что это какая-то нерешаемая проблема, а о том что получается сэкономить 100% времени, 50% системных ресурсов и всяких таких затрат. Быстрее выше сильнее.
Pavel
Но если у компании девиз - медленнее ниже примитивнее, то да, можно и sh скриптом все проблемы решать.
Pavel
И даже перейти с git на svn обратно ;)
Pavel
Ночные сборки это инновации 10летней давности. Сейчас - разработчик сделал push в гит - система все пересобрала и прогнала тесты.