Size: a a a

RU.Docker — Официальное Русское Сообщество

2020 September 01

D•

Dan • Captain in RU.Docker — Официальное Русское Сообщество
У меня докер в проде
источник

GG

George Gaál in RU.Docker — Официальное Русское Сообщество
К сожалению, да ) если аккуратно, то можно
источник

AS

Aleksey Shirokikh in RU.Docker — Официальное Русское Сообщество
Dan • Captain
У меня докер в проде
а у меня докер в поде. а под в докере.
источник

«

«Eugene» in RU.Docker — Официальное Русское Сообщество
Dan • Captain
У меня докер в проде
Расскажешь как его готовить?))
источник

«

«Eugene» in RU.Docker — Официальное Русское Сообщество
Aleksey Shirokikh
а у меня докер в поде. а под в докере.
Прям как в сказке про кощея )
источник
2020 September 03

DY

Denys Yaroshenko in RU.Docker — Официальное Русское Сообщество
Есть некий образ назовем его base и есть Dockerfile в котором использована техника multistage, что то вроде
FROM base as base
RUN ...
FROM alpine as apline
COPY --from base ...
Делаю docker build —target base и потом вижу что образ содержит все что было в base образе, а мне нужно только часть с Dockefile от FROM BASE до FROM alpine
источник

DY

Denys Yaroshenko in RU.Docker — Официальное Русское Сообщество
Нужно это для того чтобы кэшить образы в регистре, по дефолту docker build без таргета сохраняет только последний stage и потом не кешится согласно этой статье https://pythonspeed.com/articles/faster-multi-stage-builds/
источник

DY

Denys Yaroshenko in RU.Docker — Официальное Русское Сообщество
Т.е по сути проблема в том что есть у нас Dockerfile с multistage только последний сохраняется локально и при повторном docker build он генерирует все заново потому что нет предыдущих образов и кэшей из мультистейджа
источник

DY

Denys Yaroshenko in RU.Docker — Официальное Русское Сообщество
Все еще усложнено тем что я хочу кэшить это все на разных машинах потому хочу образы кинуть в регистр, но он упаковывает все что было перед Dockerfile в base образе и занимает слишком много места(если base и так сохранен зачем сохранять его еще раз при docker build —target base)
источник

DY

Denys Yaroshenko in RU.Docker — Официальное Русское Сообщество
Unless you’re very careful, Docker’s build cache often won’t work for multi-stage builds—and that means your build is slow
цитата из статьи
источник

GG

George Gaál in RU.Docker — Официальное Русское Сообщество
Denys Yaroshenko
Есть некий образ назовем его base и есть Dockerfile в котором использована техника multistage, что то вроде
FROM base as base
RUN ...
FROM alpine as apline
COPY --from base ...
Делаю docker build —target base и потом вижу что образ содержит все что было в base образе, а мне нужно только часть с Dockefile от FROM BASE до FROM alpine
ничего не понял
источник

GG

George Gaál in RU.Docker — Официальное Русское Сообщество
чего-то не то рассказываешь ) я проблем не замечал )
источник

GG

George Gaál in RU.Docker — Официальное Русское Сообщество
Denys Yaroshenko
Т.е по сути проблема в том что есть у нас Dockerfile с multistage только последний сохраняется локально и при повторном docker build он генерирует все заново потому что нет предыдущих образов и кэшей из мультистейджа
а ты сохраняй все стадии в отдельные образа
источник

DY

Denys Yaroshenko in RU.Docker — Официальное Русское Сообщество
я так и делаю, проблема в том что когда я сохраняю стадию оно тянет все слои из родительского образа и выходит образ занимает дохера места
источник

DY

Denys Yaroshenko in RU.Docker — Официальное Русское Сообщество
CUSTOM-DEBIAN -> [ Stage 1], [Stage 2] когда пытаюсь сохранить Stage 1 тянет все слои из CUSTOM-DEBIAN
источник

DY

Denys Yaroshenko in RU.Docker — Официальное Русское Сообщество
Зачем мне если у меня уже локально есть CUSTOM-DEBIAN
источник

DY

Denys Yaroshenko in RU.Docker — Официальное Русское Сообщество
docker build —target stage1
источник

DY

Denys Yaroshenko in RU.Docker — Официальное Русское Сообщество
просто у меня много образов построенных таким образом и выходит чтобы запушить stage 1 в регистр нужно очень много места и времени
источник

DY

Denys Yaroshenko in RU.Docker — Официальное Русское Сообщество
а я ожидаю что в stage 1 будет только слои которые там, т.е в от начала моего докер файла и до stage 2. А выходит как я сказал что там все что в  CUSTOM-DEBIAN + Stage 1
источник

DY

Denys Yaroshenko in RU.Docker — Официальное Русское Сообщество
И я в этом уверен я тулзу скачал dive и посмотрел что в образе
источник