镜像是Docker三大核心概念中最为重要的(镜像、容器、仓库),类似于主机或虚拟机需要有系统镜
像(ISO、BIN等、CCD、VCD格式)来安装系统才能运行,Docker在运行容器前需要在本地存在对应
的镜像进行加载,如果本地没有容器所需要的镜像,则会从默认的镜像仓库中下载(默认是Docker
Hub,另外还可以在网易蜂巢镜像中心下载,因为是国内服务器,所以会比Docker Hub下载的快)
查看镜像信息
使用docker images 可以查看本机上已有的镜像
各个字段的意思:
- REPOSITORY :说明镜像来自哪个仓库源
- TAG :镜像的标签,用来标注镜像的版本,同一个仓库源可以有多个TAG,比如Ubuntu仓库源有
16.04、15.10、14.04等多个版本,可以通过docker tag [原标签] [新标签]给镜像打上新的tag - IMAGES ID :不同与TAG,IMAGES ID 可以唯一标识镜像,执行Docker镜像相关的命令时都可以
通过IMAGES ID 指定所需的镜像,当然这里只显示IMAGES ID的前几个字段 - CREATED :镜像创建的时间
- SIZE :镜像的大小
若想查看镜像的具体信息,比如制作者、Docker的版本、镜像完整的ID等,可执行docker inspect
命令,如查看上图的镜像:
docker inspect hello-world
(也可以用镜像ID代替镜像名)
从镜像库获取镜像
使用docker pull 命令可以直接从默认的Docker Hub上下载镜像,比如需要下载ubuntu:16.04的镜像
(需要指定镜像的版本,不然会默认下载latest最新版本)
docker pull ubuntu:16.04
另外可以登陆网易蜂巢镜像中心上搜索自己想要的镜像,还是以
Ubuntu为例,在搜索框中搜索Ubuntu,选中第一个
将下载地址直接复制后贴在终端执行即可,另外还可以在该界面查看镜像的相关信息,使用方法,所以用起来方便快捷。
docker pull hub.c.163.com/public/ubuntu:16.04-tools
镜像的删除
镜像删除有两种方法,一种是根据镜像名,一种是根据镜像ID,两种都是通过 docker rim 命令来实现的。
下面例子是通过镜像ID进行删除(不需要完整的ID,只需要部分ID串前缀就好)
docker rmi 119
另外要注意的事,当有该镜像创建的容器时,该镜像无法删除,必须先清除容器,或者加入参数f,执行
docker rmi -f 119 进行强制删除镜像,但一般不推荐这么做。
镜像的导出和载入
镜像的导出
只需执行docker save -o [导出的文件名][要导出的镜像名或ID(部分ID串前缀)]命令即可
docker save -o hello-world.tar 119
镜像的载入
首先到导出的tar格式的docker镜像目录中,用docker load --input [镜像名] 命令就能将镜像导入
到本地docker库中
这里镜像名和标签都没有,可以用docker tag 进行添加。
另外制作docker镜像有涉及到容器的知识,所以将在后续进行介绍。