nodeJS dockerfile构build失败与NPM
我正在尝试为NODEJS创build一个docker容器并让它运行一个nodejs应用程序。
它在npm安装步骤上失败
The command '/bin/sh -c npm install' returned a non-zero code: 1
这是dockerfile
FROM node:onbuild # Create app directory RUN mkdir -p /usr/src/app WORKDIR /usr/src/app # Install app dependencies COPY package.json /usr/src/app/ RUN sudo npm install # Bundle app source COPY . /usr/src/app EXPOSE 8080 CMD [ "npm", "start" ]
这是package.json
{ "private": true, "devDependencies": { "gulp": "^3.8.8" }, "dependencies": { "bootstrap-sass": "^3.0.0", "express": "^4.13.4", "ioredis": "^1.15.1", "laravel-elixir": "^4.0.0", "socket.io": "^1.4.5" } }
这是我正在运行的构build命令
docker build -t jachno/nodejs .
它运行了很长时间拉动负载的东西,然后失败,退出代码为1。
有任何想法吗?
作为一个更新,我正在用一个小的免费实例构build这个应用程序。 基本上这是由于在构build过程中内存不足造成的。
一旦我添加更多的内存,构build完成正确
FROM node:onbuild
这个映像已经安装了npm包,对不对? 如果没有,先安装npm。
为了这:
# Install app dependencies COPY package.json /usr/src/app/ RUN sudo npm install
应该:
# Install app dependencies COPY package.json /usr/src/app/ RUN cd /usr/src/app && npm install