Size: a a a

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

2020 July 17

AM

Artur Mustafin in Docker — русскоговорящее сообщество
Дмитрий
Кто-то может подсказать как поступить в такой ситуации:
Есть докер файл, который устанавливает зависимости композера, устанавливает node_modules и т.д в какой-то категории - /home. Создаем образ. Создаем docker-compose который маунтит volume корня приложения в /home. Зависимости трутся.

Какой правильный подход для разработки на локале?
с node_modules ваш образ распухнет до 2 Гб или более, зависит от размеров проекта,такой файлик быстро никде не развершешь. оптом кружками под кофе затаривайтесь, у вас будет много времени на раздумья. в смысле очень много.

а еще есть вдь разное окружение для npm, есьт еще yarn, есть и development для фронта и production, умножаем смело на два
источник

GG

George Gaál in Docker — русскоговорящее сообщество
> с node_modules ваш образ распухнет до 2 Гб или более,

не вижу проблемы
источник

GG

George Gaál in Docker — русскоговорящее сообщество
на прод образ все равно должен уезжать в состоянии "все свое ношу с собой", никаких там инит контейнеров с npm install при запуске - это же дичь будет
источник

AM

Artur Mustafin in Docker — русскоговорящее сообщество
George Gaál
> с node_modules ваш образ распухнет до 2 Гб или более,

не вижу проблемы
я тоже, тут не проблема размеров
источник

GG

George Gaál in Docker — русскоговорящее сообщество
ну, давай разжуй
источник

GG

George Gaál in Docker — русскоговорящее сообщество
я просто вижу во-первых два сценария - локальная разработка (а зачем тогда докер вообще?)
источник

GG

George Gaál in Docker — русскоговорящее сообщество
и второй - это продакшен
источник

GG

George Gaál in Docker — русскоговорящее сообщество
вторая история - это куда положить "node_modules" - по идее вообще не важно, главное, чтобы оно кэшировалось и была ручка для пересборки
источник

GG

George Gaál in Docker — русскоговорящее сообщество
третья история - для разработки удобно, чтобы изменения можно было вносить быстро - следовательно пересборка образа полная при каждом изменении = плохо, это замедляет процесс
источник

GG

George Gaál in Docker — русскоговорящее сообщество
но при этом в пайплайне ci/cd так и должно быть :-/
источник

AM

Artur Mustafin in Docker — русскоговорящее сообщество
не знаю, я юзал docker load нормально грузится, просто трансфер от образа который сохранен в docker save, зависит от скоросит сети на 2 гб может до 10 минут уходить
источник

GG

George Gaál in Docker — русскоговорящее сообщество
Artur Mustafin
не знаю, я юзал docker load нормально грузится, просто трансфер от образа который сохранен в docker save, зависит от скоросит сети на 2 гб может до 10 минут уходить
не надо так делать
источник

GG

George Gaál in Docker — русскоговорящее сообщество
docker load / save - качает архив (образ) целиком, всегда
источник

GG

George Gaál in Docker — русскоговорящее сообщество
если же ты делаешь docker pull/push - докер докачивает только изменившиеся слои
источник

AM

Artur Mustafin in Docker — русскоговорящее сообщество
в общем, это тупик. в разной ситуации - разные решения.
источник

AM

Artur Mustafin in Docker — русскоговорящее сообщество
у меня такое решение было. вообще зависит от уровня (не)вменяемости заказчика
источник

GG

George Gaál in Docker — русскоговорящее сообщество
Artur Mustafin
у меня такое решение было. вообще зависит от уровня (не)вменяемости заказчика
+
источник

AM

Artur Mustafin in Docker — русскоговорящее сообщество
George Gaál
если же ты делаешь docker pull/push - докер докачивает только изменившиеся слои
я как бы много читал, спасибо, но в любом случае, если образ 100 мб то это в 20 раз быстрее даже без pull
источник

GG

George Gaál in Docker — русскоговорящее сообщество
ну, т.е. у тебя готового решения нет, я правильно понял - или хотя бы намеков на него?
источник

GG

George Gaál in Docker — русскоговорящее сообщество
Artur Mustafin
я как бы много читал, спасибо, но в любом случае, если образ 100 мб то это в 20 раз быстрее даже без pull
> но в любом случае, если образ 100 мб то это в 20 раз быстрее даже без pull

ну, кто спорит. А еще можно ставить зависимости каждый раз, но это трейдоф - что быстрее и надежнее. А еще лучше бекенд на гошке писать ) там нет этой дичи с node_modules 😃
источник