Максимальный размер стека вызовов превысил npm, установленный контейнером Docker - PullRequest
0 голосов
/ 17 сентября 2018

Я пытаюсь установить npm контейнером Docker:

Это DockerFile:

# default  /var/www/html (mapped to .../code folder with projects) 
FROM node

WORKDIR /work

# Additional tools (ng, gulp, bower)
RUN npm install -g @angular/cli bower gulp grunt

CMD while true; do sleep 10000; done

EXPOSE 3002 3003 3004

Я запускаю и сопоставляю это с этой командой:

docker run -d --name node-cmd -p 3002:3002 -p 3003:3003 -p 3004:3004 -v 
/m/dockerlogs/node-cmd/logs:/root/.npm/_logs -v /m/projekty:/work node-cmd

Я захожу в этот контейнер с:

docker exec -it node-cmd bash -c "cd /code; bash"

После запуска npm install (https://github.com/gdi2290/angular-starter), Я пишу это из зарегистрированного контейнера

Но я получаю эту ошибку после установки

npm ERR! Maximum call stack size exceeded

npm ERR! A complete log of this run can be found in:
npm ERR!     /root/.npm/_logs/2018-09-17T17_38_34_855Z-debug.log
root@08e3cd77fb83:/work/angular-starter-master#

Я пытался удалить node_modules, но эта проблема всегда.

Иногда, после этой ошибки, когда я снова пытаюсь установить npm, консоль показывает мне следующее:

npm ERR! path /work/angular-starter- 
master/node_modules/@schematics/update/packa
ge.json.2932816706
npm ERR! code ETXTBSY
npm ERR! errno -26
npm ERR! syscall rename
npm ERR! ETXTBSY: text file is busy, rename '/work/angular-starter- 
master/node_m
odules/@schematics/update/package.json.2932816706' -> '/work/angular- 
starter-mas
ter/node_modules/@schematics/update/package.json'

npm ERR! A complete log of this run can be found in:
npm ERR!     /root/.npm/_logs/2018-09-17T17_14_43_970Z-debug.log
root@08e3cd77fb83:/work/angular-starter-master#

Моя версия npm - 6.4.1

У меня есть Windows 8.1 и Docker Toolbox

Но когда я пишу npm install на Windows без Docker, все в порядке.

1 Ответ

0 голосов
/ 18 сентября 2018

Хорошо, я решил эту проблему, я использовал npm install с флагом --no-bin-links. Спасибо за ответы:)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...