amazon-web-services - Docker在为节点应用程序运行npm install时引发错误

标签 amazon-web-services docker devops

FROM node:12-alpine

RUN mkdir /project-api
WORKDIR /project-api
RUN apk add --update-cache python

ENV PYTHON=/usr/local/bin/
COPY ./package.json .

RUN npm cache clean --force
RUN rm -rf ~/.npm
RUN rm -rf node_modules
RUN rm -f package-lock.json
RUN npm install

EXPOSE 3000

我试图为我的项目创建一个节点容器,但是在npm install(bcrypt软件包)时会引发一些错误。我尝试在图像文件中安装python,但仍然显示错误。我正在附加错误屏幕enter image description here

最佳答案

bcrypt npm软件包取决于非JavaScript代码。这意味着它需要针对正在运行的特定体系结构进行构建。最初的“警告:试图下载”表示没有预构建的 Artifact ,因此它会从源头回溯到构建。

我看到的特定错误是Error: not found: make,它表示在构建的镜像(make)上未安装 node:12-alpine 。可以在 docker 文件中的先前步骤中安装它,或者切换到预安装了它的基本镜像(可能需要node:12)。
bcrypt软件包在https://github.com/kelektiv/node.bcrypt.js/wiki/Installation-Instructions#alpine-linux-based-images上有更具体的说明。

You need the following packages:

  • build-base
  • python
apk --no-cache add --virtual builds-deps build-base python

关于amazon-web-services - Docker在为节点应用程序运行npm install时引发错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60972238/

相关文章:

node.js - AWS - Cognito Identity 与 Node.js - 如何处理 token

amazon-web-services - 调用CreateStack操作时发生错误(AccessDenied): Cross-account pass role is not allowed

docker - 如何在Kubernetes中进行多容器部署

docker - 如何通过dockerfile将文件从gitlab runner复制到docker镜像

tfs - 在 VSTS 中,是否可以将功能/用户故事/任务分配给团队 [组]

amazon-web-services - AWS ECS 部署 : insufficient memory

javascript - FFMPEG 多截图命令

php - Docker LAMP堆栈-保存PHP项目的位置在哪里?

apache - 在 docker 容器中运行 apache tomcat 服务器

docker - Kubernetes允许容器退出而无需重启pod