我的 dockerfile 配置文件:
FROM ubuntu:16.04
MAINTAINER S.K.
RUN apt-get update
RUN apt-get install curl -y
RUN curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.32.1/install.sh | bash
RUN export NVM_DIR="$HOME/.nvm"
RUN [ -s "$NVM_DIR/nvm.sh" ] && . "$NVM_DIR/nvm.sh"
RUN nvm install node
RUN nvm use 6.9.1
RUN npm i express -g
RUN npm i nunjucks -g
RUN npm i nodemon -g
RUN mkdir -p PROJECT
VOLUME /PROJECT/
EXPOSE 1520
在步骤 RUN [ -s "$NVM_DIR/nvm.sh"] && 中。 “$NVM_DIR/nvm.sh”
我得到错误:
The command '/bin/sh -c [ -s "$NVM_DIR/nvm.sh" ] && . "$NVM_DIR/nvm.sh"' returned a non-zero code: 1
每个人都知道我该如何解决它?
最佳答案
我解决了我的问题!感谢所有试图帮助我的人! 在每个命令(RUN、CMD 和其他)之后,Docker 创建容器,保存对 docker 镜像的更改,并在下一个命令之前删除容器。Docker 还会在每次命令迭代时压缩目录和文件。如果你不想得到异常或错误,你应该在做任何事情之前知道它..
这是工作代码:
FROM ubuntu:16.04
MAINTAINER S.K.
RUN apt-get update
RUN apt-get install curl -y
RUN curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.32.1/install.sh | bash \
&& export NVM_DIR="$HOME/.nvm" && [ -s "$NVM_DIR/nvm.sh" ] && . "$NVM_DIR/nvm.sh" \
&& nvm install 6.9.1 \
&& npm i express -g \
&& npm i nunjucks -g \
&& npm i nodemon -g \
&& npm i gulp -g \
RUN mkdir -p ./PROJECT
EXPOSE 1520
关于node.js - Dockerfile build/bin/sh -c 返回非零代码 : 1,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40327679/