如何修复错误“复制失败:stat / var / lib / docker / tmp / docker-builder / public:没有此类文件或目录”

时间:2019-04-27 08:41:47

标签: docker nginx dockerfile

我正在尝试构建自定义的nginx docker映像,我想在其中覆盖default.conf上的/etc/nginx/conf.d/default.conf文件。 以下是Dockerfile的代码:

FROM nginx
COPY default.conf /etc/nginx/conf.d/default.conf

但是在构建图像时,出现以下错误:

Sending build context to Docker daemon  3.072kB
Step 1/2 : FROM nginx
# Executing 1 build trigger
COPY failed: stat /var/lib/docker/tmp/docker-builder221277665/public: no such file or directory

根据日志,它在第一条指令上失败。它指向public文件夹。

请帮助我理解问题,为什么它可能指向public文件夹?任何指针将不胜感激。

谢谢!

2 个答案:

答案 0 :(得分:1)

正如David在注释中所暗示的那样,该命令看起来像来自基本映像的ONBUILD指令。由于nginx不附带该命令,因此它指向主机上标记为nginx的另一个图像。从上游提取新的nginx副本可以解决以下问题:

docker pull nginx

答案 1 :(得分:0)

您是否有一个忽略公共文件夹的.dockerignore文件?