• 首页 首页 icon
  • 工具库 工具库 icon
    • IP查询 IP查询 icon
  • 内容库 内容库 icon
    • 快讯库 快讯库 icon
    • 精品库 精品库 icon
    • 问答库 问答库 icon
  • 更多 更多 icon
    • 服务条款 服务条款 icon

image概述

武飞扬头像
持子之手
帮助3

1.什么是image

学新通

尝试观察上面这个图,理解镜像有以下几个特点

1.1镜像是文件和meta data的集合(root filesystem)

例如一个centos的镜像,里面包含一些最精简版的centos文件系统,还有其他软件包等文件。

1.2镜像是分层的,每层都可以添加删除改变文件,成为一个新的image

在centos这个基础镜像之上,添加java环境,就可以制作成一个新的镜像文件。

1.3不同的image可以共享同一层layer

例如我有一个centos的基础镜像,这个镜像所在的层(layer),我可以共同开启一个java的镜像和一个tomcat的镜像。

这就是不同镜像可以共享同一层的意思。

1.4镜像本身是只读的

Image本身是read-only这个怎么去理解呢,一个镜像文件制作出来之后,是不可以改变。启动镜像就产生了容器,如果镜像发生了改变就变成了其他的镜像。一个镜像,如果启动就变成了容器,如果容器关闭,这个镜像还在这里,不会发生变化,当然容器里面有变化。

2. 如何获取image

使用了一个命令 docker pull busybox来下载一个镜像。这里来解释一下这个命令。Docker表示调用的是docker这个CLI,以后执行任何docker命令,前面都需要添加docker这个前缀,pull是拉取的意思,如果你使用过git拉取代码,同样的意思,比较好理解。Busybox是一个镜像的名称,默认是从hub.docker.com这个仓库中下载一个叫busybox的镜像到你本地docker环境。

 

下面我演示下载一个nginx的镜像操作

[root@ai ~]# docker pull nginx

学新通

上面这个图,显示jenkins这个镜像使用了7个layer,可以说每一层都可以是一个镜像,这个下载速度取决你网速。

这里说一下docker的优点,上面下载7个镜像,如果我下次下载一个其他镜像文件,例如centos,假如centos和nginx两个镜像之间都相同的一部分layer是完全一样的,这样下次下载centos镜像的时候,在jenkins已经下载过的文件就不会重复下载。

 

3.如何查看镜像

如果我们想查看docker里存在哪些镜像,你可以通过docker  images命令去查询。

[root@ai ~]# docker images

学新通

简单介绍下每个字段的含义:

  1. REPOSITORY,翻译过来是库的意思,这里只在镜像仓库中的名称是busybox;
  2. TAG字段是标记的意思,字段值latest,默认是这个latest tag,如果有其他tag,后面我们用多了不同镜像,可以看到其他tag值;
  3. IMAGE ID,就是镜像id,在镜像仓库中的一个唯一的ID,有点像git每次提到的commit的值一样;
  4. CREATED字段,就是这个镜像是什么时候制作上传到仓库中的;
  5. SIZE字段是指,镜像的文件大小。

这篇好文章是转载于:编程之路

  • 版权申明: 本站部分内容来自互联网,仅供学习及演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,请提供相关证据及您的身份证明,我们将在收到邮件后48小时内删除。
  • 本站站名: 编程之路
  • 本文地址: /boutique/detail/tanhhgaigc
系列文章
更多 icon
同类精品
更多 icon
继续加载