码迷,mamicode.com
首页 > 其他好文 > 详细

Dockerfile详解

时间:2018-10-15 14:53:04      阅读:176      评论:0      收藏:0      [点我收藏+]

标签:位置   简单的   运行   pre   目标   环境   instr   docker   情况下   

Docker instructions

  • FROM

  • FROM指令是最重要的一个且必须为Dockerfile文件开篇的第一个非注释行,用于为映像文件构建过程指  定基准镜像,后续的指令运行与此基准镜像所提供的运行环境。

  • 实践中,基准镜像可以是任何可用镜像文件,默认情况下,docker build会在docker主机上查找指定的  镜像文件,在其不存在时,则会从Docker Hub Registry上拉取所需要的镜像文件

  • 如果找不到指定的镜像文件,Docker build会返回一个错误信息

    • Syntax

      • FROM <repository>[:<tag>]或

      • FROM <repository>@<digest>

        • <repository>:指定作为base image的名称

        • <tag>: base image的标签,为可选项,默认为latest;

 

  • MAINTANIER(depreacred) #较新版本中可以使用LABEL 采用K:V格式

  •   用于让Dockerfile制作者提供本人的详细信息

  •   Docker并不限制MAINTANIER指令可出现的位置,但是推荐将其放置于FROM指令之后

    • Syntax

      •  MAINTANIER <authtor>

        • <authtor>可以是任何文本信息,约定俗成使用作者笔字及邮箱
  • COPY
    • 用于从Docker主机复制文件至创建的新映像文件
    • Syxtax
      • COPY <scr>...<dest>或
      • COPY["<src>"..."<dest>"]
        • <src>:要复制的源文件或目录,支持使用通配符;
        • <dest>:目标路径,即正在创建的image的文件系统路径;建议为<dest>使用绝对路径,否则,COPY指定则为WORKDIR为其起始路径;
      • 注意:在路径中有空白字符时,通常使用第二种格式  
  • 文件复制准则
    • <src>必须是build上下文中的路径,不能是其父目录中的文件;
    • 如果<src>是目录,则其内部文件或子目录会被递归复制,但<src>目录自身不会被复制;
    • 如果指定了多个<src>,或在<src>中使用了通配符,则<dest>必须是一个目录,且必须以 / 结尾;
    • 如果<desc>不存在,会被自动创建,这包括其父目录路径。

 

 

 

  创建一个dockerfile工作目录,开始写一个简单的dockerfile

    

 

Dockerfile详解

标签:位置   简单的   运行   pre   目标   环境   instr   docker   情况下   

原文地址:https://www.cnblogs.com/sandiandian/p/9790285.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!