![](/img/trans.png)
[英]npm ERR! code EAI_AGAIN error when trying to install express
[英]Express js npm install fails reason: getaddrinfo EAI_AGAIN
我有一個 Node.JS / Express.JS 服務器端程序,我在 Node.JS docker 容器中運行。 它在過去 ~2 年里一直在工作,現在它在安裝時會產生一個奇怪的錯誤。 我使用 docker-compose 來安裝/運行程序。
文件:
FROM node:10
ARG PORT
ENV PORT ${PORT}
# Create app directory
ADD backend /app
WORKDIR /app
RUN npm ci --only=production
EXPOSE $PORT
CMD ["npm", "run", "start-prod"]
當我嘗試安裝它時(使用docker-compose
,它每次都失敗,並顯示以下消息:
Building backend
Step 1/10 : FROM node:10
---> a8441ebf4e4d
Step 2/10 : ARG PORT
---> Using cache
---> d985b4141806
Step 3/10 : ENV PORT ${PORT}
---> Using cache
---> e053f5bb49fa
Step 4/10 : ADD backend /app
---> Using cache
---> 409d0ab160ea
Step 5/10 : WORKDIR /app
---> Using cache
---> b7aad109486b
Step 6/10 : RUN cp environment-prod-docker.js environment.js
---> Using cache
---> 218df5ff1cff
Step 7/10 : RUN cat environment.js
---> Using cache
---> 87965e20e57e
Step 8/10 : RUN npm ci --only=production
---> Running in 9352da8c367e
npm WARN prepare removing existing node_modules/ before installation
npm ERR! code EAI_AGAIN
npm ERR! errno EAI_AGAIN
npm ERR! request to https://registry.npmjs.org/bcryptjs/-/bcryptjs-2.4.3.tgz failed, reason: getaddrinfo EAI_AGAIN registry.npmjs.org registry.npmjs.org:443
我讀到這可能是代理錯誤。 我嘗試更改為我的家庭 wifi、我的家庭電纜和移動數據:仍然產生相同的錯誤。 如果我復制鏈接,我可以從瀏覽器下載 said.tgz 文件。
兩天后此問題消失(同一網絡,同一台計算機等)
這可能與評論指出的內容有關。
簡單的 DNS 問題,檢查/etc/resolv.conf
並添加:
"nameserver 8.8.8.8"
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.