ENVvariables未正确添加到容器环境

这是我的Dockefile

 FROM ubuntu:latest MAINTAINER mazzy WORKDIR /tmp RUN apt-get update && apt-get install -y wget RUN wget http://nodejs.org/dist/v0.12.0/node-v0.12.0-linux-x64.tar.gz RUN tar xvf node-v0.12.0-linux-x64.tar.gz RUN cp -r node-v0.12.0-linux-x64 /usr/local/ WORKDIR /usr/local RUN ln -s /usr/local/node-v0.12.0-linux-x64.tar.gz /usr/local/node # FIX HERE ENV PATH /usr/local/node/bin:$PATH RUN npm install -g bower EXPOSE 8080:8080 

这个Dockerfile的问题是,当我运行它时,我得到了错误npm找不到。 这可能是由于安装文件夹未正确添加到PATH envvariables所致。

你知道为什么吗?

您创build的符号链接无效。 你的/usr/local/node指向一个不存在的文件。 你必须忽略.tar.gz

除此之外,我build议使用node:onbuild镜像作为基础。 它是作为您自己的节点应用程序的构build块而创build的,并且已经包含了适当的node.js和npm设置。