@ru_docker

Страница 41 из 610
yopp
12.07.2016
15:56:46
да, оно за cloudfront

Evgeny
12.07.2016
16:01:26
Да все пашет. Это Росчтототам наверное заблочил опять

ptchol
12.07.2016
18:17:28
Слушайте, у меня близкий вопрос. А как тогда ребилдить модули для того же нпма или пипа, когда поменялись packages.json /requirements.txt ?

Типа если он из кеша берет слой.

Google
Evgeny
12.07.2016
18:18:38
Если меняется пакадж - все следующие слои будет ребилдится

Если ты пакадж копируешь (а как еще ты узнаешь что ставить?)

А если зависимости глубже и у тебя нет завязки на версию в пакадже (как у нас) - перед пакаджем еще копировать разрезолвенные зависимости как отдельный файл

ptchol
12.07.2016
18:30:47
Чет не въехал

То есть он проверяет и мд5 файликов которые мы копируем внутрь имиджа ? И если он поменялся, ниже билд пойдет ?

Aleksandr
12.07.2016
18:36:29
Не проверяет

Просто COPY всегда новый образ собирает

ptchol
12.07.2016
18:39:32
Тогда это бестолковая херь

А есть вариант ребилдить пекежжи тока в случае изменения файла ?

Aleksandr
12.07.2016
18:40:50
хотя не, чот я запутался

это ADD вроде новый образ делает. и то не всегда :)

Evgeny
12.07.2016
18:42:35
Кто-то тут,мягко говоря,не прав

Да, сверяется хеш при каждом копировании

Google
Evgeny
12.07.2016
18:43:45
Не слушай диванных докероводов

Aleksandr
12.07.2016
18:50:51
ptchol
12.07.2016
18:55:37
Не слушай диванных докероводов
окай гай ) вобще этот вариант крутой. получается если они не менялись, мы в билд просто строчкой ниже положим новый код и все. нада замутить !

Evgeny
12.07.2016
18:55:52
бинго!

А еще если много разных имаджей с похожей базой - между ними можно расшарить общий кеш и еще уменьшить время билда ;)

yopp
12.07.2016
18:59:16
ах блядь

вот теперь я вспомнил почему у нас оно не работало :(

и почему не всё так просто с тем чтоб собрать все зависимости и почему мы их собираем предварительно :(

пичаль

кстати

если у нас COPY $PROJECT_NAME /var/www/$PROJECT_NAME

если $PROJECT_NAME поменялся, будет новый слой, так?

у нас просто 4 имаджа с такой конструкцией, в целом если для каждого имаджа такой слой будет кешироваться, то срать

Алексей
12.07.2016
19:05:43
кеш слоев все равно будет

yopp
12.07.2016
19:05:51
короче, перефразирую. У меня сейчас есть COPY $PROJECT_NAME /var/www/$PROJECT_NAME. Если я сделаю COPY $PROJECT_NAME/foo /var/www/$PROJECT_NAME/foo COPY $PROJECT_NAME /var/www/$PROJECT_NAME оно первый copy закеширует?

Алексей
12.07.2016
19:06:00
пемеренные окружения они в твоем мире

yopp
12.07.2016
19:06:05
потому что /foo меняется очень редко

Алексей
12.07.2016
19:06:18
а докер их видит уже разрезолвинными

yopp
12.07.2016
19:06:32
ага, норм

а с двумя COPY?

Google
Алексей
12.07.2016
19:06:51
каждый копи - отдельный слой

yopp
12.07.2016
19:07:46
ну я вон там выше пример привёл

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

из них 45 мегабайт это зависимости

вынести их из папки это очень страшный геморой

вот если я сделаю сначала слой который копирует зависимости, а потом уже весь проект, я просто сделаю лишний слой с зависимостями?

в теории можно ещё один ADD добавить, в котором эту папочку выпиливать

и потом уже копировать

Алексей
12.07.2016
19:14:24
много статей было на предмет правильного с точки зрения потребления места инженеринга слоев.

и тут обсуждали тоже

почитай статьи вышедшие после 1,10

Vyacheslav
12.07.2016
19:19:07
Вначале нужно COPY Gemfile* и делать install, а затем делать COPY проекта. Тогда кэш с зависимостями будет нормально работать.

Vyacheslav
12.07.2016
19:24:01
Например?

yopp
12.07.2016
19:24:57
во-первых, зависимости уже установлены, их поставили перед тем как гонять тесты

во-вторых, это значит тащить шаги которые сейчас выполняются и настраиваются в тимсити в имадж

Vyacheslav
12.07.2016
19:26:12
У вас разработчики при разработке всегда ставят гемы внутрь проекта?

Алексей
12.07.2016
19:27:52
@dd_bb видимо у вас есть логика того что должно быть в докерфайле и что дожно быть в слоях.

R-omk
12.07.2016
19:27:59
я свои имаджи вообще всегда в один слой сливаю

Google
yopp
12.07.2016
19:28:23
@dd_bb видимо у вас есть логика того что должно быть в докерфайле и что дожно быть в слоях.
мне идеально чтоб в докерфайлах уже ничего никто не ставил и делал только copy

Vyacheslav
12.07.2016
19:28:24
И потом пересобираешь по часу?

Алексей
12.07.2016
19:28:24
и пока видится мне она похожа на "против течения"

R-omk
12.07.2016
19:28:48
И потом пересобираешь по часу?
ты не прав, собираются быстро очень , засчет того что слови в билдере остаются

а вот итоговый слой получается очень компактным если все равильно седлать

Алексей
12.07.2016
19:29:45
ну да, если в одном слое поставить gcc потом собрать приложение потом удалить gcc

то на выходе скваша будет мало

Admin
ERROR: S client not available

R-omk
12.07.2016
19:30:02
но скваш собирает в один

Алексей
12.07.2016
19:30:15
да да я помню принцип

Vyacheslav
12.07.2016
19:30:26
вопроса не понял
Я имею ввиду как и почему там оказываются зависимости. Но видимо я не очень понял ваш workflow.

Алексей
12.07.2016
19:30:27
сквашь молодец в этом отношении

yopp
12.07.2016
19:31:03
Я имею ввиду как и почему там оказываются зависимости. Но видимо я не очень понял ваш workflow.
у нас есть большой проект, он лежит в одном гит репо, он поделен на много маленьких проектов

R-omk
12.07.2016
19:31:04
а том то иприкол,Ю я могу в слох засунуть гектар исходников, собрать ихзних все что нужно сделать сто раз copy и потом удалить лишнее

yopp
12.07.2016
19:31:26
есть один проект который core, который используется в бандлере в некоторых других

R-omk
12.07.2016
19:31:27
squash
https://github.com/goldmann/docker-squash https://github.com/goldmann/docker-squash/issues/96#issuecomment-222153029

Google
yopp
12.07.2016
19:31:59
проекты == продукты

для каждого продукта по успешной CI сборке делается имадж

Evgeny
12.07.2016
19:32:45
кароче каждый * как хочет

Vyacheslav
12.07.2016
19:32:59
как может

R-omk
12.07.2016
19:33:21
как умеет

Vyacheslav
12.07.2016
19:33:38
так может как умеет же

R-omk
12.07.2016
19:33:53
так нет же, может правильно , но не умеет)

Semyon
13.07.2016
06:18:53
Поцоны, а у вас dockerhub сегодня нормально работает?

У меня чот таймауты валятся

видимо локальная проблема, отбой

Marina
13.07.2016
12:59:20
кто-нибудь сталкивался с проблемой, что когда настраиваешь devicemapper с thin pool, то перестает работать таб в командах докера?

Алексей
13.07.2016
13:00:16
ох

а это точно связано между собой ?

Marina
13.07.2016
13:01:16
я по этому туториалу настраивала https://docs.docker.com/engine/userguide/storagedriver/device-mapper-driver/

Ivan
13.07.2016
13:16:28
кто-нибудь сталкивался с проблемой, что когда настраиваешь devicemapper с thin pool, то перестает работать таб в командах докера?
Начало охуительной истории! Вспоминается история с багом в драйвере ядра, а проявлялось тоже из-за какой-то мелочи

R-omk
13.07.2016
13:17:22
devicemapper с thin pool вообще идея так себе его использовать

это же самый последний вариант

Marina
13.07.2016
13:20:48
? мне показалось, что нормально должно получиться.

R-omk
13.07.2016
13:33:47
Overlay лучше всего

А вот если для volume то может и норм

corpix
13.07.2016
13:36:02
А сеть случайно не ipv6 only? А то гитхаб не умеет в ipv6 :(

Страница 41 из 610