Dockerfile 是什么 | 学习笔记

简介: 快速学习 Dockerfile 是什么

开发者学堂课程【Docker 快速入门:Dockerfile 是什么】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址:https://developer.aliyun.com/learning/course/616/detail/9405


Dockerfile 是什么

内容介绍

一.思考回顾

二.Dockerfile 解析

 

上节课讲述在Docker 容器数据卷,容器内添加容器卷时,粗略的讲过Dockerfile。这节课正式学习 Dockerfile 解析,这是很重要的一章。

 

一.思考回顾

上节课用 Dockerfile 写容器卷时的主流步骤:

1.手动编写一个 dockerfile 文件,必须符合 file 的规范

2.编写文件后,直接 docker build 命令执行,获得一个自定义的镜像

3.run

开篇时讲过,最好必备 Linux 的基础,最好懂 maven 理念

maven build

Jar

java-jar ms。 。 。 。

maven 在 keeps 里面有 maven build ,编译成一个 jar ,”java-jar ms。 。 。 。”运行微服务

对比套路与流程,异曲同工之妙

流程:编写—构建—执行

 

二.Dockerfile 解析

1. Dockerfile 是什么

Dockerfile 是用来构建 Docker 镜像的构建文件,(有点像 Linux 脚本)是由一系列命令和参数组成的脚本。

之前看过的  Dockerfile,源码第一行都是由“FROM”开头,关键字标红,都有在最左边标出,标红且全大写。

2.构建三步骤:

编写 Dockerfile 文件— docker build — docker run

3.文件(以我们熟悉的 CentOS 为例)

在 CentOS 6.8 下,在此强调,“docker images”前面打开的美团的界面图,它是精简版的 CentOS ,它的大小只是 199 接近 200 兆,而我们当前使用的 CentOS 6.8 可是接近 4 个 G 左右,4.8 G。有两个 CentOS ,原因是什么?

原来一个是真正的 CentOS 6.8,另一个是跑在 Docker 容器下 200 兆的精简版的 CentOS ,这两个根本不是一回事。

image.png

如图,以我们熟悉的 CentOS 为例,它的大小只有 199.7MB。

我们来学习一下最简单的 dockerfile ,登录 hub.docker.com ,进入 centos ,查找 STARS,可以看到最新的版本是 CentOS 7,点击 CentOS 6.8 进入后有以下程序

FROM scratch
MAINTAINER The CentOS Project<cloud-ops@centos.org>
ADD c68-docker. tar. xz/
LABEL name="CentOS Base Image"\
vendor="Cent0S"\
license="GPLv2"\
build-date=“2016-06-02”

#Default command
CMD["/bin/bash"]

Scrath 字符,(类似于 Java 中的某一字符),是所有镜像文件的基础,来自于 CentOS,而 CentOS 来自于 scrath (基础镜像),本源,源镜像。

MAINTAINER 作者加邮箱,在 DockerFile 体系结构会具体讲解

ADD 后面跟压缩包

LABEL 标签说明

CMD 命令

“docker run-it centos”或者“docker run-it centos/bin/bash”运行并读取某一镜像,根据调成建议,运行。

这两种写法都正确,因为在 CMD 中自带“/bin/bash”,第二种程序执行出来就比第一种程序多一行“/bin/bash”。

相关文章
|
6月前
|
缓存 Shell Go
dockerfile笔记
dockerfile笔记
70 0
|
Java Shell Linux
41-Dockerfile-Dockerfile简介
41-Dockerfile-Dockerfile简介
|
应用服务中间件 Shell nginx
|
运维 Shell Linux
Dockerfile 深入理解
Dockerfile 深入理解
228 0
Dockerfile 深入理解
|
Docker 容器
Dockerfile笔记
照着写就行
111 0
Dockerfile笔记
|
运维 Java Shell
Dockerfile学习
Dockerfile学习笔记
|
存储 Java 应用服务中间件
DockerFile理解和使用
Dockerfile构建镜像是以基础镜像为基础的,Dockerfile是一个文本文件,内容是用户编写的一些docker指令,每一条指令构建一层,因此每一条指令的内容,就是描述该层应当如何构建。 Dockerfile的基本指令有十三个,分别是:FROM、MAINTAINER、RUN、CMD、EXPOSE、ENV、ADD、COPY、ENTRYPOINT、VOLUME、USER、WORKDIR、ONBUILD
186 0
DockerFile理解和使用
|
Java 应用服务中间件 开发者
DockerFile 小总结 | 学习笔记
快速学习 DockerFile 小总结
DockerFile 小总结 | 学习笔记
|
开发者 Docker 容器
DockerFile 小总结|学习笔记
快速学习 DockerFile 小总结
DockerFile 小总结|学习笔记
|
Java Linux Shell
Dockerfile 是什么|学习笔记
快速学习 Dockerfile 是什么
Dockerfile 是什么|学习笔记