我用这个:
RUN sudo apt-get install -y nodejs
然后我们将nodejs可执行文件链接到节点,如下所示:
RUN sudo ln -s `which nodejs` /usr/bin/node
这一切都很好,但出于某种原因," npm"安装nodejs后命令不可用。
为什么会这样?我以为npm总是与nodejs捆绑在一起?我还需要做什么才能安装npm?我确定已经安装了nodejs,但是npm似乎不存在,$(which npm)
什么也没有产生。
答案 0 :(得分:3)
如果您正在使用here中的解决方案(而且看起来确实如此),那么您应该知道,Java图像是based on Debian Jessie。
如果您看一下Jessie包,那么您会看到,Jessie有npm
as a separate package
答案 1 :(得分:2)
正如您已经提到的,您的泊坞窗基础图像为openjdk:latest
运行apt-get install nodejs
安装版本0.10时不足为奇。因为那时Debian repos中有什么可用的。正如@nordenheim正确指出的那样 - npm并未包含在node.js发行版中。
因此,根据您的评论,您希望安装一个新的node.js,例如7.x。
您有3个选项:
openjdk:latest
+安装node.js。只需从官方node.js Dockerfile - https://github.com/nodejs/docker-node/blob/master/7.10/wheezy/Dockerfile node:latest
+安装OpenJDK。只是另一种方式。答案 2 :(得分:1)
它可能是文档错误:
https://nodejs.org/en/download/package-manager/
看起来像和nodejs一起安装npm,我们需要使用:
sudo apt-get install -y nodejs npm
这是