⒈是什么?

  DockerFile是用来构建Docker镜像的构建文件,是由一系列命令和参数构成的脚本文件。

⒉步骤

  ①手动编写一个符合规范的DockerFile文件(编写)

  ②使用docker build执行这个文件生成自定义镜像(构建)

  ③docker run(执行)

*

  DockerFile  =》  软件原材料

  Docker镜像  =》  软件交付品

  Docker容器  =》  软件运行态

DockerFile面向开发,Docker镜像成为交付标准,Docker容器则设计部署与运维,三者缺一不可,合力充当Docker体系的基石。

  

⒊Docker执行DockerFile的大致流程

  ①Docker从基础镜像运行一个容器

  ②执行一条执行并对容器作出修改

  ③执行类似docker commit的操作提交一个新的镜像层

  ④Docker再基于刚提交的镜像运行一个新容器

  ⑤执行DockerFile中的下一条执行直到所有指令全部执行完成

⒋指令

  ⒈FROM

    基础镜像,当前新镜像是基于那个镜像的。

  ⒉MAINTAINER

    镜像维护者的姓名和邮箱地址

  ⒊RUN

    容器构建时需要运行的命令

  ⒋EXPOSE

    当前容器对外暴漏的端口号

  ⒌WORKDIR

    指定在创建容器后,终端默认登陆进来的工作目录

  ⒍ENV

    用来在构建镜像过程中设置环境变量

  ⒎ADD

    将宿主机目录下的文件拷贝进镜像且ADD指令会自动处理URL和解压tar压缩包

  ⒏COPY

    类似ADD指令,拷贝文件和目录到镜像中,没有下一步操作,不会解压等。

  ⒐VOLUME

    容器数据卷,用于数据保存和持久化工作

  ⒑CMD

    指定一个容器启动时要运行的命令

    DockerFile中可以有多个CMD指令,但只有最后一个会生效

    CMD指令会被docker run之后的参数替换

  ⒒ENTRYPOINT

    指定一个容器启动时要运行的命令

  ⒓ONBUILD

    当构建一个被继承的DockerFile时运行命令,父镜像在被子继承后父镜像的ONBUILD指令将被触发

⒌指令相关

  ①每条指令必须为大写字母且后面至少跟随一个参数

  ②指令按照从上到下,顺序执行

  ③#表示注释

  ④每条指令都会创建一个新的镜像层,并对镜像进行提交

⒍如何构建?

  docker build -f [DockerFile的绝对路径] -t 镜像名称:版本号

⒎Docker父镜像

  Base镜像(scratch),父镜像,基镜像,相当于C#/Java中的Object类,99%的镜像都是通过Base镜像构建出来的。

DockerFile解析的更多相关文章

  1. Dockerfile解析(八)

    一.Dockerfile是什么 Dockerfile是用来构建Docker镜像的构建文件,是由一系列命令和参数构成的脚本. 1. 构建的步骤 运行容器:docker run 构建新的镜像:docker ...

  2. 6、DockerFile解析:三步走、保留字指令

    1.dockerfiel是什么 1.是什么 Dockerfile是用来构建Docker镜像的构建文件,是由一系列命令和参数构成的脚本. 2.构建三步骤 编写Dockerfile文件 docker bu ...

  3. docker学习笔记-05:DockerFile解析

    一.DockerFile是什么 1.DockerFile是用来构建docker镜像的构建文件,是由一系列参数和命令构成的脚本. 2.构建三步骤: 手动编写一个dockerfile文件,然后直接dock ...

  4. dockerfile解析过程

    什么是dockerfile? DockerFile是用来构建docker镜像的文件,是由一系列命令和参数组成. 构建步骤? 1.编写dockerfile文件 2.docker build 3.dock ...

  5. 05--Docker对DockerFile解析

    一.是什么: 1.1 DockerFile是用来构建Docker镜像的构建文件,是由一系列命令和参数构成的脚本 1.2 构建步骤: 1.2.1 编写Dockerfile文件 1.2.2 docker ...

  6. Docker小白到实战之Dockerfile解析及实战演示,果然顺手

    前言 使用第三方镜像肯定不是学习Docker的最终目的,最想要的还是自己构建镜像:将自己的程序.文件.环境等构建成自己想要的应用镜像,方便后续部署.启动和维护:而Dockerfile就是专门做这个事的 ...

  7. Dockerfile 解析

    Dockerfile Dockerfile是用来构建Docker镜像的构建文件,是由一系列参数和命令构成的脚本. 构建的三个步骤:1.编写Dockerfile文件  2.docker build  3 ...

  8. [置顶] Docker学习总结(3)——Docker实战之入门以及Dockerfile(三)

    应用镜像 csphere/wordpress:4.2 # cd docker-training/wordpress/ # ls -a . license.txt wp-config-sample.ph ...

  9. DockerFile理解与应用

    1.DockerFile是什么? DockerFile是用来构建Docker镜像的构建文件,一般分为四部分:基础镜像信息.维护者信息.镜像操作指令和容器启动时执行指令,'#' 为 Dockerfile ...

随机推荐

  1. Codeforces Round #382 (Div. 2) C. Tennis Championship

    C. Tennis Championship time limit per test 2 seconds memory limit per test 256 megabytes input stand ...

  2. MT【28】内心外衣下的等腰三角形个数

    解答:30 评:这道题倒不是传统的与内心相关的向量题,传统的与内心或者内切圆有关的两个结论是aIA+bIB+cIC=0以及所谓的"人品公式"S=rp.这里主要是得到此三角形为以AC ...

  3. 【转】hex和bin文件格式的区别

    hex和bin文件格式的区别 Intel HEX文件是记录文本行的ASCII文本文件,在Intel HEX文件中,每一行是一个HEX记录,由十六进制数组成的机器码或者数据常量.Intel HEX文件经 ...

  4. libcurl使用easy模式阻塞卡死等问题的完美解决

    引言: 由于要在android手机测进行DM开发, 其中最重要的就是FUMO和SCOMO下载, 下载使用的是linux开源库libcurl. 于是就把libcurl的使用研究了一遍, 有些心得, 并解 ...

  5. pacman安装软件包出现损坏

    状况 File .pkg.tar.xz is corrupted (invalid or corrupted package (PGP signature)).Do you want to delet ...

  6. CF710F String Set Queries

    CF710F String Set Queries 支持字符串的插入和删除...SAM也干不了这个事 所以可以用cdq分治+AC自动机O(nlogn)解决 但是本题强制在线~~~ 我们还有一个工具,叫 ...

  7. Spring的后置处理器BeanFactoryPostProcessor

    新建一个JavaBean UserBeanFactoryPostProcessor 实现了BeanFactoryPostProcessor接口 Spring配置文件如下: 编写测试用例 从结果可以看出 ...

  8. [luogu2822][组合数问题]

    题目链接 题解: 对于上面和下面的式子进行分解质因数,然后看看上面的质因数个数减去下面的质因数个数能不能达到k的质因数的要求即可. 分解质因数的时候用对于阶乘分解质因数的常用方法:比如要求1999!中 ...

  9. CRC-16的原理和实现

    CRC的全称为Cyclic Redundancy Check,中文名称为循环冗余校验.它是一类重要的线性分组码,编码和解码方法简单,检错和纠错能力强,在通信领域广泛地用于实现差错控制.实际上,除 数据 ...

  10. Codeforces Round #523 (Div. 2) C. Multiplicity

    C. Multiplicity 题目链接:https://codeforc.es/contest/1061/problem/C 题意: 给出一串数,问它的“好序列“有多少.好序列的定义是,首先是一个子 ...