本节书摘来自华章计算机《docker技术入门与实战》一书中的第3章,第3.1节,作者:杨保华,戴王剑,曹亚仑著, 更多章节内容可以访问云栖社区“华章计算机”公众号查看。
镜像是docker运行容器的前提。
读者可以使用docker pull命令从网络上下载镜像。该命令的格式为docker pull name[:tag]。对于docker镜像来说,如果不显式地指定tag,则默认会选择latest标签,即下载仓库中最新版本的镜像。
下面,笔者将演示如何从docker hub的ubuntu仓库下载一个最新的ubuntu操作系统的镜像。
该命令实际上下载的就是ubuntu:latest镜像,目前最新的14.04版本的镜像。
下载过程中可以看出,镜像文件一般由若干层组成,行首的2185fd50e2ca这样的字串代表了各层的id。下载过程中会获取并输出镜像的各层信息。层(layer)其实是aufs(advanced union file system,一种联合文件系统)中的重要概念,是实现增量保存与更新的基础。
读者还可以通过指定标签来下载特定版本的某一个镜像,例如14.04标签的镜像。
上面两条命令实际上都相当于$ sudo docker pull registry.hub.docker.com/ubuntu:latest命令,即从默认的注册服务器 registry.hub.docker.com中的ubuntu仓库来下载标记为latest的镜像。
用户也可以选择从其他注册服务器的仓库下载。此时,需要在仓库名称前指定完整的仓库注册服务器地址。例如从dockerpool社区的镜像源dl.dockerpool.com下载最新的ubuntu镜像。
下载镜像到本地后,即可随时使用该镜像了,例如利用该镜像创建一个容器,在其中运行 bash 应用。