@devops_ru

Страница 3945 из 4568
Sergey
05.06.2018
13:31:04
можно в другой

или слово репа это глобально

прям другой гитлаб сервер

Alexander
05.06.2018
13:33:43
можно в другой
Я понимаю что можно в другой. Хотел узнать как принято хранить)

Google
Artem
05.06.2018
13:33:48
нет, не едит, просто мне нравится стебаться на фоне всеобщей истерии, github жаль конечно, но я не настолько сильно ним пользуюсь что бы меня это сколько нибудь зацепало
вспоминается сразу история с мелкософтом и скайпом. и как я после переустановки убунтени полгода назад решил стянуть деб скайпа. а потом хтмл через него скинуть

Sergey
05.06.2018
13:35:44
и чего

Artem
05.06.2018
13:38:51
ибо впихнули какую то веб версию вмазанную под декстопное приложение, она сожрала весь хтмл) видимо приняла его за инъекции

Maxym
05.06.2018
13:40:13
Electron же.

Ivan
05.06.2018
13:52:29
О, раз пошла такая жара про gitlab + docker у меня тоже есть вопрос: У нас есть репо в которой хранятся докерфайлы и они автоматически собираются и пушаться в гитлабовский registry с помощью bash скрипта. Он их называет в соответствии с названием директории в которой находится докерфайл. Есть ли какой-то способ сделать это более пристойным? Ибо сейчас при любом пуше в репо скрипт полностью проверяет и пересобирает все контейнеры, которые по его мнению изменились.

No1
05.06.2018
13:56:55
чем они собираются?

packer?

или gitlab свою магию напилил?

Ivan
05.06.2018
13:58:27
чем они собираются?
в gitlab ci yaml вызывается bash скрипт, который лежит там же в репо, а там штатные docker build, docker push и т.п.

Google
Dima
05.06.2018
14:02:09
Ребята, как в haproxy сделать blacklist?

Artem
05.06.2018
14:03:55
iptables ?

Эдуард
05.06.2018
14:04:03
Ребята, как в haproxy сделать blacklist?
Чем тебя iptables не устроили?

Dima
05.06.2018
14:04:27
Чем тебя iptables не устроили?
У меня ранчер с haproxy.

Ivan
05.06.2018
14:06:01
Лучше разделить на разные проекты)
Думал об этом, возможно правильно, единственное что напрягает это разрастание количества проектов. Один проект со всеми докерами для сборок проще обслуживать, но в целом надо бы наверное - будет ребилд только того что нужно. Но меня интересует вопрос такой - есть ли в гитлабе какой-нибудь шаблон и решение для автосборки и публикации своих образов в стиле best practice, ибо я уверен что далеко не первый кто сталкивается с этой проблемой

Ivan
05.06.2018
14:11:53
Что мешает использовать переменные окружения или захардкодить имя которое вам нужно в скрипте?
Ага, так и есть и некоторые переменные гитлаба тоже пробрасываются в докер

Stanislav
05.06.2018
14:11:55
Вот реально вызывать баш-скрипт на пару строк из .gitlab-ci.yml это импотенция

Шаблонизация и динамические переменные наше фсе

Ivan
05.06.2018
14:12:29
Вот реально вызывать баш-скрипт на пару строк из .gitlab-ci.yml это импотенция
=)) если бы там были просто пару строк на баше, я бы не спрашивал

Stanislav
05.06.2018
14:12:57
=)) если бы там были просто пару строк на баше, я бы не спрашивал
Собрать конт это не рокет сами знаете шо) Другое дело что вы там понамешали еще всякого)

No1
05.06.2018
14:13:01
only: - tags

Stanislav
05.06.2018
14:13:54
=)) если бы там были просто пару строк на баше, я бы не спрашивал
Вот примерчек с моего последнего проекта:

.template:build: &template_build script: - docker login -u gitlab-ci-token -p $CI_BUILD_TOKEN $CI_REGISTRY - docker pull $CI_REGISTRY_IMAGE/${IMG_NAME}:$BUILD_MARK || true - > docker build —cache-from $CI_REGISTRY_IMAGE/${IMG_NAME}:$BUILD_MARK -t $CI_REGISTRY_IMAGE/${IMG_NAME}:$BUILD_MARK -f ${DOCKERFILE-./Dockerfile} ./ - docker push $CI_REGISTRY_IMAGE/${IMG_NAME-default}

Stanislav
05.06.2018
14:16:13
и 100 джобов переопределяющих переменные под себя?
Именно, по факту достаточно IMG_NAME только экспортить

сам тег обычно из envinroment

export BUILD_MARK=$(if [[ ! -z $CI_BUILD_TAG ]];then echo $CI_BUILD_TAG;else echo $CI_BUILD_REF_SLUG;fi)

Google
Stanislav
05.06.2018
14:17:09
вот BUILD_MARK

Он в глобальном before_script:

Ivan
05.06.2018
14:18:55
Stanislav @DodgeCamaro @No1zzz в общем спасибо я примерно понял 2 главные вещи которые надо сделать - всё-таки разнести докерфайлы в разные проекты ибо упростит билд-пуш-тэг флоу и что надо избавлятся от баш скрипта в принципе

No1
05.06.2018
14:19:11
посмотрите в packer

Ivan
05.06.2018
14:19:53
Stanislav
05.06.2018
14:19:59
Кейс с разносом я не особо понял, но вот тут к примеру можно подставлять переменную с докерфайлом, просто называй по разному на крайняк. -f ${DOCKERFILE-./Dockerfile}

Просто удобно когда все в одном проекте собирается

и настраивается сборка

Ivan
05.06.2018
14:21:37
Да и разносить вообще не обязательно
так можно будет написать универсальный темплейт .gitlab-ci.yml и просто копипастить его из проекта в проект без спагетти кода

Stanislav
05.06.2018
14:21:55
Централизованность более удобна

В рамках одного проекта

Ivan
05.06.2018
14:22:29
Просто удобно когда все в одном проекте собирается
ага, я тоже так думал поэтому и не разносил, но некоторые образы докерфайл и ориджин образ которых не менялись, докер всё равно ребилдит при пуше

Stanislav
05.06.2018
14:22:51
- docker pull $CI_REGISTRY_IMAGE/${IMG_NAME}:$BUILD_MARK || true

docker build —cache-from $CI_REGISTRY_IMAGE/${IMG_NAME}:

Google
Stanislav
05.06.2018
14:23:28
Главное грамотно пиши dockerfile

Ivan
05.06.2018
14:23:28
Для этого используй cache
вроде бы я настраивал, ща чекну

docker build —cache-from $CI_REGISTRY_IMAGE/${IMG_NAME}:
кэша нет, вот это большое спасибо - хз как упустил

Stanislav
05.06.2018
14:25:27
Pull не забудь только

Admin


Stanislav
05.06.2018
14:25:30
без него не заработает

если билдишь в контейнерах

Ivan
05.06.2018
14:26:15
Stanislav Спасибо большое! Короче надо не тупить и в баш скрипт пробрасывать гиталобоские переменные, а нормально переписать всё в ci yaml, ну да и кэш не забыть

посмотрите в packer
Вот тут бы хотел поподробнее - в чём преимущество перед сборкой докерфайлами? p.s. использовал его только для упаковки cloud images

Дмитрий
05.06.2018
14:31:40
значит у вас что-то не правильно настроено

Дмитрий
05.06.2018
14:34:41
куда закрыт доступ?

в гитлабе права на реджистри определяются правами на проект.

не уверен нужно ли логиниться чтобы из под одного проекта выкачать контейнер из другого проекта, этого не пробовал

пуши раннером в тот же проект идут без авторизации

Ivan
05.06.2018
14:38:00
пуши раннером в тот же проект идут без авторизации
не очень понял вот этот момент - пуши раннером в докер реджистри проекта??

Дмитрий
05.06.2018
14:41:03
нет, реджистри там один, но пушить в registry.example.com/имя_проекта:latest может только тот, у кого есть права на проект имя_проекта.

Google
Дмитрий
05.06.2018
14:42:22
и по идее, если у того кто запускает папйлайн есть права и на другой проект, то из под раннера конетйнер со второго проекта будет качаться без авторизации

Stanislav
05.06.2018
14:45:22
и по идее, если у того кто запускает папйлайн есть права и на другой проект, то из под раннера конетйнер со второго проекта будет качаться без авторизации
специально сейчас проверил на своем проекте чтобы не быть голословным! Еще раз, это НЕ работает без логина!

denied: access forbidden ERROR: Job failed: error executing remote command: command terminated with non-zero exit code: Error executing in Docker Container: 1

Дмитрий
05.06.2018
14:45:45
я сейчас тоже проверю)

Stanislav
05.06.2018
14:45:48
Более того, логин в докере это в официальной инструкции от гитлаба

Ivan
05.06.2018
14:47:30
нет, реджистри там один, но пушить в registry.example.com/имя_проекта:latest может только тот, у кого есть права на проект имя_проекта.
интересный момент, но у меня project name=docker а докеров в нём порядка 25. И они конечно имеют свои имена

Den
05.06.2018
14:47:58
Я что то мб не понимаю после отпуска. Но аруба хочет 20 евро за пустую виртуалку в месяц при тарифном плане в 1 евро ?

Stanislav
05.06.2018
14:48:00
я сейчас тоже проверю)
Возможно у вас собирается на железном воркере где уже залогинен docker с обычной учеткой

Ivan
05.06.2018
14:48:25
Более того, логин в докере это в официальной инструкции от гитлаба
ага, вот я так и настраивал и без логина мне говорили 401

Дмитрий
05.06.2018
14:54:10
точно

Stanislav
05.06.2018
14:54:17
)))

Вот где магия зарыта)

Страница 3945 из 4568