2016-05-23 2 views
0

Я пытаюсь закрепить проект, но у меня возникают проблемы с процессом npm install с моей зависимостью Gulp 4. Я использую Gulp 4, потому что нам нужны некоторые новые функции, но все инструкции, которые я видел для использования предварительной версии Gulp 4, - это использовать URL-адрес ветки github. Вот виновный зависимость:Установка github поддерживала зависимости npm с Docker

"gulp": "github:gulpjs/gulp#4.0", 

А вот ошибка, я получаю, когда я пытаюсь запустить docker build -t user/project .:

npm ERR! Error: No compatible version found: [email protected]'github:gulpjs/gulp#4.0' 
npm ERR! Valid install targets: 
npm ERR! ["0.0.1","0.0.2","0.0.3","0.0.4","0.0.5","0.0.7","0.0.8","0.0.9","0.1.0","0.2.0","1.0.0","1.1.0","1.2.0","1.2.1","2.0.0","2.0.1","2.1.0","2.2.0","2.3.0","2.4.0","2.4.1","2.6.0","2.6.1","2.7.0","3.0.0","3.1.1","3.1.2","3.1.3","3.1.4","3.2.0","3.2.1","3.2.2","3.2.3","3.2.4","3.2.5","3.3.0","3.3.1","3.3.2","3.3.4","3.4.0","3.5.0","3.5.1","3.5.2","3.5.5","3.5.6","3.6.0","3.6.1","3.6.2","3.7.0","3.8.0","3.8.1","3.8.2","3.8.3","3.8.4","3.8.5","3.8.6","3.8.7","3.8.8","3.8.9","3.8.10","3.8.11","3.9.0","3.9.1"] 
npm ERR!  at installTargetsError (/usr/lib/node_modules/npm/lib/cache.js:719:10) 
npm ERR!  at /usr/lib/node_modules/npm/lib/cache.js:638:10 
npm ERR!  at saved (/usr/lib/node_modules/npm-registry-client/lib/get.js:148:7) 
npm ERR!  at /usr/lib/node_modules/graceful-fs/polyfills.js:133:7 
npm ERR!  at Object.oncomplete (fs.js:108:15) 
npm ERR! If you need help, you may report this log at: 
npm ERR!  <http://github.com/isaacs/npm/issues> 
npm ERR! or email it to: 
npm ERR!  <[email protected]> 

npm ERR! System Linux 3.19.0-51-generic 
npm ERR! command "node" "/usr/bin/npm" "install" 
npm ERR! cwd /src 
npm ERR! node -v v0.10.42 
npm ERR! npm -v 1.3.6 

Это Dockerfile настоящее время я использую:

# Using CentOS 
FROM centos:centos6 

# Enable Extra Packages for Enterprise Linux (EPEL) for CentOS 
RUN  yum install -y epel-release 

# Install Node.js and npm 
RUN  yum install -y nodejs npm 
COPY package.json /src/package.json 

# Install app dependencies 
RUN  cd /src; npm install 

# Bundle app source 
COPY . /src 

# Run server 
EXPOSE 8080 
CMD  ["npm", "start"] 

Есть ли способ заставить Docker быть в порядке с URL-адресом github? Или есть альтернативный способ включить зависимость, которую Докер будет доволен?

+1

Можете ли вы повторить версию узла в файле докеров? Подтвердить, какая версия узла доступна в контейнере? – Shibashis

+0

Хороший звонок! Я тупо предположил, что версия будет несколько недавней, но это было 0.10. Исправлена ​​ошибка, связанная с зависимостью докеров от новой версии. – TimE

ответ

1

Проблема была вызвана более старой версией узла, доступной на базовом изображении. Версия узла несовместима с версией gulp.

Базовое изображение с более новой версией узла разрешило проблему.

Смежные вопросы