我的Dockerfile如下所示:
From ubuntu:14.04
WORKDIR /app
#COPY package.json /app/package.json
COPY . /app
RUN npm install
EXPOSE 3000
CMD ["npm","start"]
现在,当我运行命令sudo docker-t my-app.
时。它给我以下错误:
将构建上下文发送到Docker守护程序453.6 kB将构建上下文发送到Docker守护程序步骤0:从ubuntu:14.04---
我的Dockerfile中是否缺少任何内容?
这是预期的。您的映像没有安装node,因为基本映像是ubuntu。您应该使用节点映像作为基本映像。
From node
WORKDIR /app
#COPY package.json /app/package.json
COPY . /app
RUN npm install
EXPOSE 3000
CMD ["npm","start"]
你的Dockerfile正在构建vanilla ubuntu从ubuntu: 14.04
,所以如果你想在容器中使用npm/node,你需要按照ubuntu的安装说明添加RUN
命令来安装node,从而自己安装node。
取而代之的是,您可能只想简单地使用在以下位置找到的官方节点映像:
https://hub.docker.com/_/node/
从节点
或使用特定版本/发行版,例如
从节点:8.4.0-whezy
(docker hub页面上列出了其他标签/版本/发行版)