【问题标题】:Docker daemon unable to find the dockerfileDocker 守护进程找不到 dockerfile
【发布时间】:2015-09-18 22:34:34
【问题描述】:

我正在尝试使用以下 docker 文件创建 node-js 基础映像

Dockerfile:

FROM node:0.10-onbuild
# replace this with your application's default port
EXPOSE 8888

然后我运行命令“sudo docker build -t nodejs-base-image .” 这一直失败并出现错误

FATA[0000] The Dockerfile (Dockerfile) must be within the build context (.) 

我正在从“Dockerfile”所在的同一目录运行上述命令。可能会发生什么? 我在Docker version 1.6.2, build 7c8fca2

【问题讨论】:

  • 您的 FROM node:0.10-onbuild 表示本地或 Docker Hub 中的 docker 映像以该名称存在。 docker image | grep node 显示了吗?或者有一个错字,你想在你的 Dockerfile 中使用ONBUILD 指令?请参阅docs.docker.com/reference/builder/#onbuild 的 ONBUILD 文档
  • 你的当前目录中是否有一个名为Dockerfile 的文件? root 用户可以访问您的本地目录吗?也就是说,sudo cat Dockerfile 工作,还是返回错误?
  • 是的,有一个名为 Dockerfile 的文件,并且 cat Dockerfile 可以工作
  • 我将 docker 文件更改为从本地存储库中存在的基础映像“ubuntu:14.04”构建。但仍然得到同样的错误

标签: node.js image docker


【解决方案1】:

发生这种情况是因为我对相关 Dockerfile 没有适当的权限

【讨论】: