Sardor
?
Anatoly
а можно ли в docker-compose передать аргументы, которые будут доступны в файле docker-compose.yml в виде переменных?
Anatoly
Спасибо
Alexander
Всем привет! Ребят подскажите можно ли во время билда образа в зависимости от ветки подсовывать Переменные?
Alexander
Интересует возможносьт подмены —build-arg переменных
George
подсовывай. У тебя же гитлаб CI?
Alexander
угу
Alexander
подсовывай. У тебя же гитлаб CI?
А можно подробнее узнать как по вопросу подсовывания переменных в зависимости от ветки?
George
берешь и подсовываешь. В чем проблема-то
George
задай вопрос конкретнее - где у тебя эти переменные хранятся
Alexander
надо чтобы если дев ветка то один аргумент если прод то другой
Alexander
да в том-то и проблема знал бы куда их пристроить пристроил бы
Alexander
по сути они могут как в CI/CD быть так и в самом gitlab.yml
Alexander
эх, понял как но мне так не охота делать
Alexander
делать два имаджа из-за одной переменной .....
George
да в том-то и проблема знал бы куда их пристроить пристроил бы
Ну я например переменные для дива и прода храню в бд, а див или прод устанавливаю в переменной среды
Alexander
там трабла в том что там нода будь она не ладна
Alexander
у нее тупорылый env файл
Alexander
я понимаю что на уровне билда я могу просто файлы скопировать а на уровне сборки запустить скрипт сборки уже с учетом переданных переменных
Alexander
но она собака долго собирается
Dmitry
Контейнеры запустились, к какому хосту в браузере обращаться, чтобы посмотреть результат. Посмотреть через docker-machine ip не получается
rambling
cache-from
George
у нее тупорылый env файл
значит замени его редисом
George
или в таблице сохрани одну строчку с этапом (див/прод) костыли, конечно, но зато потом просто меняешь состояние в таблице и перезапускаешь код
rambling
еще бывает что прогеры пишут не самые оптимальные докерфайлы
Alexander
в памяти держать константные переменные?
Alexander
там докер файл с официального сайта, по сути рекомендованный
rambling
в памяти держать константные переменные?
а почему бы констансы не зашить в имейдж, переменные билда держать отдельно и переменные прода-дева-сервиса впрыскиватьн а момент рана образа
rambling
если все через гитлаб то там суперчетко все с передачей переменных на лету
Alexander
долго будет билдить на этапе рана
rambling
cache-from юзать можн и как передача энвой влияет на скорость билда
Alexander
там нода
rambling
нода всм
Alexander
пока она собирается хороший бумеранг успевает вокруг земли облететь )
rambling
ноде жс?
Alexander
вьюдж
Alexander
vuejs
George
там косяк с чтенией environment
rambling
вьюдж
дык копай в сторону оптимизации билда - dockerignore, cache-from, самой сути докерфайла, эвы типа секретов должны быть в воздухе (в гитлабе), все соатльное в файле если его прям КУЧА
Alexander
кэшь конечно хорошо, но это нода, закеширует какой-нить модуль, потом будешь репу часать почему локально все работает а на проде фигня выходит
Alexander
плавали знаем ))))
George
короче, я твой вопрос и проблематику пока не понял
Alexander
ладно, спасибо, подтолкнули на пару мыслей )
George
в принципе, никто не мешает в гитлабе нарезать массив переменных, а потом их определить с суффиксом ветки и подкидывтаь нужную
Alexander
ну а пример
Alexander
доку вот дал бы прям расцеловал бы тебя
George
либо сделать env -файлы по названиям веток (или даже не так - просто в каждой ветке свой env, но это опасно) и тупо его инжектировать
George
ну, костыли везде
George
нет такого... универсального решения. можешь в @ru_gitlab поспрашивать
Alexander
про енв в разных форматах уже думал
Alexander
понял, все равно спасибо, появились мысли
George
короче, все говно
George
самое главное - не запекай енвы в сам образ. Это очень стремно. когда хацкер случайно твой докИр скачал
Alexander
в общем кому интересно
Alexander
на уровне сборки для конкретной ветки сделал свои аргументы
George
можно было через if распилить
George
типа if [[ "$CI_COMMIT_REF_NAME" eq "master" ]]
George
список есть https://docs.gitlab.com/ee/ci/variables/predefined_variables.html
Petr
можно ли готовым скриптом или алиасом в одну команду свитчаться между minikube и локальным докером
rambling
миникуб при none драйвере и есть твой докер
Petr
по умолчанию, он ведь в виртуалке через hyperkit
Petr
я про МакОс
Denis🇨🇭🚜 🕌
rambling
не совсем
? буквально на прошлой неделе смотрел - тащемта даже пауз контейнеры в общем пространстве
Petr
так вопрос не в этом
Terry
? буквально на прошлой неделе смотрел - тащемта даже пауз контейнеры в общем пространстве
миникуб это обертка комманд над квм, виртбоксом и тп, и докером
Petr
гипервизоры
rambling
миникуб это обертка комманд над квм, виртбоксом и тп, и докером
а, ну это само собой, но я же писал при none драйвере виртуализации за основу берется докер контейнеры которые находятся в общем пространства с докер контейнерами хост системы
hostmit
Товаищи, чем лучше под вин10 примонтировать через SSH файловую систему...
inqfen
Может не стоит через ssh?