Прежде чем вы пометите мой вопрос как дубликат... Я перепробовал все остальное, что смог найти в Google.
ИСТОРИЯ: Мы используем частный репозиторий npm Enterprise. Docker + Vagrant используются для сборки Env Setup. Сценарии установки содержат npm install
s ссылающихся пакетов из частного репозитория. И установка npm завершается с ошибкой ниже
npm http request GET https://npm.lab.myorg.com/passport-http
npm info attempt registry request try #3 at 4:27:26 PM
npm http request GET https://npm.lab.myorg.com/verror
npm ERR! Linux 3.13.0-24-generic
npm ERR! argv "/usr/local/bin/node" "/usr/local/bin/npm" "install"
npm ERR! node v5.6.0
npm ERR! npm v3.6.0
npm ERR! code ENOTFOUND
npm ERR! errno ENOTFOUND
npm ERR! syscall getaddrinfo
npm ERR! network getaddrinfo ENOTFOUND npm.lab.myorg.com npm.lab.myorg.com:443
npm ERR! network This is most likely not a problem with npm itself
npm ERR! network and is related to network connectivity.
npm ERR! network In most cases you are behind a proxy or have bad network settings.
npm ERR! network
npm ERR! network If you are behind a proxy, please make sure that the
npm ERR! network 'proxy' config is set properly. See: 'npm help config'
npm ERR! Please include the following file with any support request:
npm ERR! /usr/src/app/npm-debug.log
Я пробовал все, что предлагалось в Интернете
- Пробовал перезапускать днс.
- Выяснил в ИТ отделе, есть ли прокси и нет ли их. Поэтому убедитесь, что
npm config proxy
пусто Я проверил подключение к
npm.lab.myorg.com:443
, все в порядке.vagrant@dockerhost:~/git/ curl -Is https://npm.lab.myorg.com/ HTTP/1.1 200 OK Server: nginx/1.4.6 (Ubuntu) Date: Sun, 16 Oct 2016 16:26:40 GMT Content-Type: text/html; charset=utf-8 Content-Length: 36342 Connection: keep-alive X-Powered-By: Sinopia/1.4.0 X-Frame-Options: deny ETag: "180fec4dfa875dd07ebf5f43887ca234" Vary: Accept-Encoding X-Status-Cat: http://flic.kr/p/aVuVsF
ОБНОВЛЕНИЕ 1; Curl из контейнера Docker не работает при вставке шага RUN curl -I -vvvv https://npm.lab.myorg.com/
в Dockerfile
это результат
Step 5 : RUN curl -I -vvvv https://npm.lab.myorg.com/
---> Running in a677c4429ea5
* Hostname was NOT found in DNS cache
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0* Could not resolve host: npm.lab.myorg.com
* Closing connection 0
curl: (6) Could not resolve host: npm.lab.myorg.com
ERROR: Service '******' failed to build: The command '/bin/sh -c curl -I -vvvv https://npm.lab.myorg.com/' returned a non-zero code: 6
Тот же завиток при запуске из терминала работает все хорошо.
ОБНОВЛЕНИЕ 2: содержимое файла докера ниже
FROM tools.lab.myorg.com:5000/myorg/node:0.10.40.3
LABEL description="blahhblah API" \
version=1.0
ENV WORKDIR=/usr/src/app
WORKDIR $WORKDIR
RUN curl -I -vvvv https://www.google.co.in/
RUN mkdir -p $WORKDIR/script \
&& npm install -g privatePackage1
&& npm install -g privatePackage2
# COPY ./package.json $WORKDIR
# COPY ./script/ $WORKDIR/script/
# RUN ./script/bootstrap
COPY . $WORKDIR
CMD ["script/server"]