Size: a a a

DevOps — русскоговорящее сообщество

2020 December 23

i

inqfen in DevOps — русскоговорящее сообщество
а почему бы не пойти от от обратного?
источник

i

inqfen in DevOps — русскоговорящее сообщество
копируешь все, в докеригнор то, что не надо
источник

ПЧ

Павел Червов... in DevOps — русскоговорящее сообщество
inqfen
копируешь все, в докеригнор то, что не надо
Может тогда легче в .dockerignore пойти от обратного?

*
!src
источник

i

inqfen in DevOps — русскоговорящее сообщество
Павел Червов
Может тогда легче в .dockerignore пойти от обратного?

*
!src
Суть та же. Я к тому, зачем куча директив copy
источник

i

inqfen in DevOps — русскоговорящее сообщество
Если можно обойтись одной
источник

ПЧ

Павел Червов... in DevOps — русскоговорящее сообщество
inqfen
Если можно обойтись одной
Ментально так легче контроллировать то что нужно скопировать (всего 3 папки)
Но может для докера (веса образа) лучше ваш вариант?
источник

i

inqfen in DevOps — русскоговорящее сообщество
1. Это дольше
2. Каждый COPY - новый слой
источник

i

inqfen in DevOps — русскоговорящее сообщество
Ну и увеличиваешь объем докерфайла хз зачем
источник

ПЧ

Павел Червов... in DevOps — русскоговорящее сообщество
inqfen
Ну и увеличиваешь объем докерфайла хз зачем
Спасибо, примерно это и хотел узнать.
источник

i

inqfen in DevOps — русскоговорящее сообщество
Я тебе доку докера пересказал почти вообще-то)
источник

ПЧ

Павел Червов... in DevOps — русскоговорящее сообщество
inqfen
Я тебе доку докера пересказал почти вообще-то)
в доке докера не донесено четко о том, что даже если ты в COPY укажешь конкретные каталоги или файлы, контекст сборки всеравно захватит ВСЕ каталоги и файлы )
источник

i

inqfen in DevOps — русскоговорящее сообщество
Да ну
источник

i

inqfen in DevOps — русскоговорящее сообщество
>The docker build command builds an image from a Dockerfile and a context. The build’s context is the set of files at a specified location PATH or URL. The PATH is a directory on your local filesystem. The URL is a Git repository location.

A context is processed recursively. So, a PATH includes any subdirectories and the URL includes the repository and its submodules. This example shows a build command that uses the current directory as context:

$ docker build .

Sending build context to Docker daemon  6.51 MB

все вроде явно написано
источник

t

tú féin a mharúㅤ͏󠆷... in DevOps — русскоговорящее сообщество
Павел Червов
в доке докера не донесено четко о том, что даже если ты в COPY укажешь конкретные каталоги или файлы, контекст сборки всеравно захватит ВСЕ каталоги и файлы )
А это не логично?
источник

i

inqfen in DevOps — русскоговорящее сообщество
>The build’s context is the set of files at a specified location PATH or URL
>So, a PATH includes any subdirectories and the URL includes the repository and its submodules
источник

t

tú féin a mharúㅤ͏󠆷... in DevOps — русскоговорящее сообщество
Зачем тогда .dockerignore, если явно нужно указывать что брать? Да и глупо это.
источник

ПЧ

Павел Червов... in DevOps — русскоговорящее сообщество
tú féin a mharúㅤ͏󠆷
А это не логично?
Логичнно когда начинаешь сам читать и понимать, а когда не читая в чатике решил спросить, то да, не логично 😊
источник

i

inqfen in DevOps — русскоговорящее сообщество
Павел Червов
Логичнно когда начинаешь сам читать и понимать, а когда не читая в чатике решил спросить, то да, не логично 😊
Так вот и надо было прочитать, там есть и про context и про dockerignore) Причем прямо даже на одной странице
источник

ПЧ

Павел Червов... in DevOps — русскоговорящее сообщество
inqfen
>The docker build command builds an image from a Dockerfile and a context. The build’s context is the set of files at a specified location PATH or URL. The PATH is a directory on your local filesystem. The URL is a Git repository location.

A context is processed recursively. So, a PATH includes any subdirectories and the URL includes the repository and its submodules. This example shows a build command that uses the current directory as context:

$ docker build .

Sending build context to Docker daemon  6.51 MB

все вроде явно написано
спасибо, да, читанул уже 👍
источник

ПЧ

Павел Червов... in DevOps — русскоговорящее сообщество
inqfen
Так вот и надо было прочитать, там есть и про context и про dockerignore) Причем прямо даже на одной странице
Ну раз ты ходяая дока докера, подскажи еще, каждый RUN тоже новый слой да?

Вместо нескольких RUN лучше так сделать

RUN npm ci --production && npm run build && npm i -g serve && serve -s build -l tcp://0.0.0.0:5000

?
источник