Docker 无法运行 nodejs npm

She*_*ock 3 node.js npm docker

当我在Dockerfile 中运行以下命令时:

FROM ruby:2.3

RUN apt-get update

RUN apt-get install nodejs npm -y

RUN apt-get install vim -y

RUN apt-get install memcached -y
Run Code Online (Sandbox Code Playgroud)

我得到以下错误:

将构建上下文发送到 Docker 守护进程 29.74MB

步骤 1/12:从 ruby​​:2.3

---> 09c6ceeef3bc

步骤 2/12:运行 apt-get 更新

---> 使用缓存

---> c41c3235c3ba

步骤 3/12:运行 apt-get install nodejs npm -y

---> 在 b0d407900cbd 中运行

正在阅读包裹清单...

构建依赖树...

读取状态信息...

**E: 无法定位包 npm

命令“/bin/sh -c apt-get install nodejs npm -y”返回非零代码:100**

请提出解决方案,在此先感谢您。

cgr*_*rim 9

Docker 映像ruby:2.3基于 Debian 9 Stretch,其中有较旧的nodejs软件包,没有npm软件包。

你可以这样做:

RUN apt-get update; \
    apt-get install -y curl gnupg; \
    curl -sL https://deb.nodesource.com/setup_8.x | bash -; \
    apt-get install -y nodejs; \
    rm -rf /var/lib/apt/lists/*
Run Code Online (Sandbox Code Playgroud)

首先,它安装curl为能够下载安装脚本,并且gnupg该安装脚本需要它。

您可以在 nodejs 官方网站上阅读更多内容:https ://nodejs.org/en/download/package-manager/#debian-and-ubuntu-based-linux-distributions

  • 对,或者只使用节点图像。 (2认同)