在我构建新的镜像的时候, 发生 了  no such file or directory 的错误。  这个错误找了半天, 没头绪, 后来灵光一现, 原来是我的文件夹名字写错了

我的目录结构是这样的

[root@host sample]# find ./ -type f
./enginx/global.conf
./enginx/nginx.conf
./Dockerfile
[root@host sample]# find ./ -type d
./
./enginx
[root@host sample]#

sample 文件夹中有一个Dockerfile 文件和一个nginx文件夹, nginx文件夹中有global.conf  和 nginx.conf

cd 进 sample   下 使用如下命令构建镜像

[root@host sample]# docker build -t addictions/nginx .

后面的“.”  表示当前目录, 会从当前目录去找Dockfile文件, 当前目录会被上传到docker进程作为构建上下文目录,  只有构建上下文目录的文件才可以被ADD  或者 COPY 到镜像中。

[root@host sample]# docker build -t addictions/nginx .
Sending build context to Docker daemon 17.41 kB
Sending build context to Docker daemon
Step : FROM ubuntu
---> 70d53b6cf65a
Step : MAINTAINER jxl "2013143154@qq.com"
---> Using cache
---> 0be2be8c6d47
Step : ENV REFRESHED_AT --
---> Using cache
---> 48ead1b5bfb6
Step : RUN apt-get -yqq update && apt-get -yqq install nginx
---> Using cache
---> 3c834a6164b3
Step : RUN mkdir -p /var/www/html/website
---> Using cache
---> 5044773f5e09
Step : ADD nginx/global.conf /etc/nginx/conf.d/
nginx/global.conf: no such file or directory

以上是我报的错, 原因是我我在Dockerfie中的ADD 命令中的文件夹名字写成了nginx,  而构建上下文目录中的文件夹是enginx。  不一致, 所以在上下文目录中找不到这个文件夹, 自然也找不到文件夹下的目录

解决方案:  将构建上下文目录中的enginx 改成 nginx 即可, 或者将Dockerfile中的ADD 命令后面的nginx 改成enginx,   以下是构建成功之后的输出

[root@host sample]# docker build -t addictions/nginx .
Sending build context to Docker daemon 4.608 kB
Sending build context to Docker daemon
Step : FROM ubuntu
---> 70d53b6cf65a
Step : MAINTAINER jxl "2013143154@qq.com"
---> Using cache
---> 0be2be8c6d47
Step : ENV REFRESHED_AT --
---> Using cache
---> 48ead1b5bfb6
Step : RUN apt-get -yqq update && apt-get -yqq install nginx
---> Using cache
---> 3c834a6164b3
Step : RUN mkdir -p /var/www/html/website
---> Using cache
---> 5044773f5e09
Step : ADD nginx/global.conf /etc/nginx/conf.d/
---> cfee19df85f2
Removing intermediate container 0eddbc45f54d
Step : ADD nginx/nginx.conf /etc/nginx/nginx.conf
---> dbf25a20d66d
Removing intermediate container 8fbdd8c0eb26
Step : EXPOSE
---> Running in 0e4ef7402519
---> 2b909217eb99
Removing intermediate container 0e4ef7402519
Successfully built 2b909217eb99
[root@host sample]#

docker build no such file or directory的更多相关文章

  1. Visual studio docker build no such file or directory

    在我构建新的镜像的时候, 发生 了  no such file or directory 的错误.  这个错误找了半天, 没头绪,项目结构是这样的: WebApplication1 建立在根目录下,是 ...

  2. docker 解决:Get http:///var/run/docker.sock/v1.19/version: dial unix /var/run/docker.sock: no such file or directory. Are you trying to connect to a TLS-enabled daemon without TLS?

    docker 安装之后,通过命令查看docker相关信息时,可能会出现错误:Get http:///var/run/docker.sock/v1.19/version: dial unix /var/ ...

  3. Linux,Docker,Jenkins No such file or directory

    你们先休息下,我先哭哭! 今天在做交接项目的bug修改的时候,在创建文件的时候报错 No such file or directory 然后跟着路径去linux中查看了该路径,但确实存在,并且权限都是 ...

  4. failed to create rwlayer: lstat /var/lib/docker/overlay2/ no such file or directory

    在使用Docker构建微服务镜像时出现的错误.第一天构建好好的,第二天就出现了这样的错误.通过百度这条错误的信息非常少,只在 stackoverflow.com 上找到一条,问题指向了 dockerf ...

  5. Docker build 安装报错, Could not open requirments file: [Errno 2] No such file or directory:'requirements.txt'

    docker安装教程 https://docs.docker.com/get-started/part2/#build-the-app 相关帖子 https://stackoverflow.com/q ...

  6. Azure Devops: COPY failed: stat /var/lib/docker/tmp/docker-builder268095359/xxxxxxx.csproj no such file or directory

    在Azure Devops中部署docker镜像时,  出现COPY failed: stat /var/lib/docker/tmp/docker-builder268095359/xxxxxxx. ...

  7. docker load导入镜像报错:open /var/lib/docker/tmp/docker-import-970689518/bin/json: no such file or directory

    今天将之前打包好的mysql5.7.19的tar包通过docker load命令导入到Docker环境中却报出了如下错误: [root@host---- task]# docker load < ...

  8. dockercompose up build fail (node no such file or directory packages.json )

    docker构建项目遇到如下问题: npm ERR! Darwin 15.0.0 npm ERR! argv "/usr/local/lib/node_modules/iojs-bin/no ...

  9. docker :no such file or directory

    ---恢复内容开始--- 其中最主要的问题是:details: (open /etc/docker/certs.d/registry.access.redhat.com/redhat-ca.crt: ...

随机推荐

  1. 洛谷1072(gcd的运用)

    已知正整数a0,a1,b0,b1,设某未知正整数x满足: 1. x 和 a0 的最大公约数是 a1​: 2. x 和 b0​ 的最小公倍数是b1. Hankson 的“逆问题”就是求出满足条件的正整数 ...

  2. 101 Symmetric Tree 判断一颗二叉树是否是镜像二叉树

    给定一个二叉树,检查它是否是它自己的镜像(即,围绕它的中心对称).例如,这个二叉树 [1,2,2,3,4,4,3] 是对称的.    1   / \  2   2 / \ / \3  4 4  3但是 ...

  3. Java中,数值比较大小,以及数值判断相等

    Java中,数值比较大小,以及数值判断相等

  4. 优秀Java程序员的四大忌,你避免了吗?

    做为一名优秀的程序员需要具备永不放弃的精神,如果一个程序员不具备这种永不放弃的精神,那么这个程序员只能算是一名假程序员.而通往成功的道路上往往是不平坦的,想要成为一个合格的高级Java程序员,需要规避 ...

  5. 慢慢积累遇到的linux指令

    sudo 用来以其他身份来执行命令,预设身份为root sudo apt install git 下载git sudo root 进入root身份(只有这个身份ubuntu和window系统之间才能共 ...

  6. ios UITableView顶部向下偏移

    //设置向下偏移20[self.tableView setContentInset:UIEdgeInsetsMake(20,0,0,0)];

  7. uvm_agent——007(特工)

    詹姆斯·邦德作为007的代言人,很好地诠释了agent的含义.但是在计算机系统中agent(代理)指能自主活动的软件或者硬件实体.在UVC中agent作为容器,实例化VIP的所有模块包括driver, ...

  8. JAVA的程序基本结构和数据类型

    //源程序 Hello.java public class Hello { static String str ="Hello World"; public static void ...

  9. ubuntu16.0 安装 openstack

    主要参考官方文档:https://docs.openstack.org/liberty/zh_CN/install-guide-ubuntu/environment-nosql-database.ht ...

  10. mybatis 原理研究

    1. mybatis 是使用JDBC来实现的, 所以需要我们首先了解JDBC 的查询 ①加载JDBC驱动 ②建立并获取数据库连接 ③设置sql语句的传递参数 ④执行sql语句并获得结果 ⑤对结果进行转 ...