
24
|
第
2
章
2.1
容器镜像
几乎每个人第一次接触容器技术都是从容器镜像开始。容器镜像是一个二进
制软件包,其中封装了在操作系统容器内部运行程序所需的所有文件。至于
第一次尝试使用镜像的经历,有可能是利用本地文件系统构建容器镜像,也
有可能是从容器仓库下载某个已存在的镜像。无论是哪种情况,等到计算机
获取容器镜像后,你就可以运行镜像,在操作系统容器内生成应用程序。
Docker
镜像格式
最流行以及使用最广泛的容器镜像格式就是
Docker
镜像格式,这种格式由
Docker
开源项目开发,用于
docker
命令打包、分发和运行容器。后来,
Docker
公司和其他公司通过开放容器计划(
Open Container Initiative
,
OCI
)
项目对容器镜像格式进行了标准化。尽管
2017
年
OCI
标准发布了
1.0
版本,
然而这些标准的采用进展缓慢。
Docker
镜像格式仍然是事实上的标准。该格
式由一系列文件系统层组成,每一层都在文件系统上一层的基础之上添加、
删除或修改文件。这是一个典型的层叠文件系统(
Overlay FileSystem
)。打
包镜像和实际使用镜像的过程都用到了层叠文件系统。在运行时,这类的文
件系统有多种不同的具体实现,如
aufs
、
overlay
和
overlay2
等。
容器分层
“
Docker
镜像格式”和“容器镜像”这两个词可能有点令人迷惑。镜像
文件不是一个文件,而是指向其他文件的清单文件的规范。用户常常将
清单及关联文件视为一个单元。这种间接的方式可以实现更有效的存储
和传输。与该格式紧密相关的是将镜像上传到镜像仓库以及从镜像仓库 ...