Я пытаюсь подготовить проект локально, который использует NodeJs с NPM.
Я использую npm install
на своем хост-компьютере (MacBook Pro Retina, 15 дюймов, середина 2015 г.), используя nvm
с версией узла 10.19
:
added 2335 packages from 985 contributors and audited 916010 packages in 61.736s
Когда Я запускаю ту же настройку в Docker, результат намного медленнее. Это мой docker-compose.yml
файл:
version: '3.4'
services:
node:
image: node:10.19-alpine
container_name: node
volumes:
- .:/app/
- npm-cache:/root/.npm
working_dir: /app
command: ["tail", "-f", "/dev/null"]
volumes:
npm-cache:
external: false
Затем я выполняю:
docker-compose up -d node; docker exec -t node npm install
И результат:
added 2265 packages from 975 contributors and audited 916010 packages in 259.895s
(я предполагаю, что количество получаемых пакетов отличается из-за разной платформы).
Я думал, что быстрая установка была достигнута благодаря наличию локального кэша (поэтому в кэше docker есть дополнительный том для кэширования), но затем я запустил:
$ npm cache clean --force && rm -rf ~/.npm && rm -rf node_modules
, и результат для установки на хост-машине по-прежнему постоянно ~ 60 секунд.
Когда речь идет о ресурсах, выделенных для виртуальной машины Docker, он не должен Это не проблема, вот моя Docker конфигурация виртуальной машины:
Я не знаю где еще посмотреть, любая помощь будет принята с благодарностью.
Спасибо