DockerFile是什么
Dockerfile是用来构建Docker镜像的构建文件,是由一系列命令和参数构成的脚本
Docker 三步骤
- 手动编写一个dockerfile文件,当然,必须要符合file的规范
- 有这个文件后,直接 docker buid 命令执行,获得一个自定义的镜像
- run
DockerFile 张什么样
以我们熟悉的 sentos 为列
https://github.com/CentOS/sig-cloud-instance-images/blob/b2d195220e1c5b181427c3172829c23ab9cd27eb/docker/Dockerfile
DockerFile 构建过程解析
DockerFile内容基础知识
- 每条保留字指令都必须为大写字母且后面要跟随至少一个参数
- 指令按照从上到下,顺序执行
- # 表示注释
- 每条指令都会创建一个新的镜像层,并对镜像进行提交
Docker执行DockerFile的大致流程
- dockers从基础镜像运行一个容器
- 执行一条指令并对容器做出修改
- 执行类似docker commit的操作提交一个新的镜像层
- docker 在基于刚才提交的镜像运行一个新容器
- 执行docker中的下一条指令直到所有指令都执行完成
小总结
从应用软件的角度来看,Dockerfile、 Docker镜像与Docker容器分别代表软件的三个不同阶段,
- Dockerfile是软件的原材料
- Docker镜像是软件的交付品
- Docker容器则可以认为是软件的运行态。
Dockerfile面向开发,Docker镜 像成为交付标准,Docker容 器则涉及部署与运维,三者缺- -不可,合力充当Docker体系的基石。
1、Dockerfile,需要定义一个Dockerfile,Dockerfile定 义了进程需要的一切东西。Dockerfile涉 及的内容包括执行代码或者是文件、环境变量、依赖包、运行时环境、动态链接库、操作系统的发行版、服务进程和内核进程(当应用进程需要和系统服务和内核进程打交道,这时需要考虑如何设计namespace的权限控制)等等;
2、Docker镜像,在用Dockerfile定义一文件之后,docker build时会产生- -个Docker镜像,当运行Docker镜像时,会真正开始提供服务;
3、Docker容器,容器是直接提供服务的。