npm install errors out saying ' Error: getaddrinfo ENOTFOUND npm.lab.myorg.com'

npm install errors out saying ' Error: getaddrinfo ENOTFOUND npm.lab.myorg.com'

在您将我的问题标记为重复之前..我尝试了在 google

上可以找到的所有其他内容

故事:我们正在使用 npm Enterprise private Repo。 Docker + Vagrant 用于构建环境设置。安装脚本包含 npm installs 引用私人仓库中的包。 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

我已经尝试了网上建议的所有方法

  1. 已尝试重新启动 dns。
  2. 从IT部门查到有没有代理 还有none。所以确保 npm config proxy 为空
  3. 我检查了与 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;在 Dockerfile

中插入步骤 RUN curl -I -vvvv https://npm.lab.myorg.com/ 时,从 docker 容器内部卷曲失败

这是输出

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:docker 文件内容如下

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"]

直接在安装脚本中的 npm install 命令之前尝试 运行ning curl -I -vvvv https://npm.lab.myorg.com/(我认为 运行 在 Docker 容器上Dockerfile 运行 命令?)。

这应该会打印出一些调试信息,以显示 Docker 容器是否可以访问您的私有存储库。