川石教育
全国咨询热线:136-9172-9932
  1. 首页 > 资讯与干货 > IT资讯

Docker镜像的使用以及获取

作者:川石学院 日期:2021-09-28 10:13:39 点击数:

一天一个关于测试知识点,5分钟内讲解你最关心的软件测试问题,今天就来谈谈关于软件测试中的“Docker镜像”。

Docker镜像的使用以及获取(图1)

  什么是Docker镜像

  Docker镜像是由文件系统叠加而成,最低端是一个引导文件系统,即bootfs,这个很像Linux/Unix的引导文件系统,Docker用户几乎永远不和引导文件系统有交互。Docker看起来很像一个Linux虚拟化栈,Docker镜像的第二层是root文件系统rootfs,它位于引导文件系统之上,rootfs可以是一种或多种操作系统。

  在传统的Linux引导过程中,root文件系统会先以只读的方式加载,当引导结束并完成完整性检查后,它才会被切换成读写模式,但是在Docker中,root文件系统永远只能是只读状态,并且Docker利用联合加载(union mount)技术会在root文件系统层上加载更多的只读文件系统,联合加载指的是一次同时加载多个文件系统,但是在外面看起来只能看到一个文件系统。联合加载会将各层文件系统叠加到一起,这样最终的文件系统会包含所有底层的文件和目录。

  Docker将这样的文件系统称为镜像,一个镜像可以放到另一个镜像的顶部,位于下面的镜像称之为父镜像(parent image),可以依次类推,直到镜像栈的最底部,最底部的镜像称之为基础镜像(baseimage)。最后当从一个镜像启支容器时,Docker会在该镜像的最顶层加载一个读写文件系统。

Docker镜像的使用以及获取(图2)

  获取镜像

  镜像是运行容器的前提, 官方的Docker Hub 网站已经提供了数十万个镜像供大家开放下载。本节主要介绍pecker 镜像的pull 子命令。可以使用docker [image] pull 命令直接从Docker Hub 镜像源来下载镜像。该命令的格式为:

docker [image] pull NAME [ :TAG]

  NAME 是镜像仓库名称(用来区分镜像)TAG 是镜像的标签(往往用来表示版本信息) 。通常情况下, 描述一个镜像需要包括“名称+标签“ 信息。如果在下载镜像时没有标示版本,那么下载下来的将是最新版本,标签为latest。

Docker镜像的使用以及获取(图3)

  下载过程中可以看出,镜像文件一般由若干层(layer)组成,427c82bd70cd这样的串是层的唯一id(实际上完整的id包括256比特,64个十六进制字符组成)。

可能有人会想到, 在不同的镜像仓库服务器的情况下,可能会出现镜像重名的情况。严格地讲,镜像的仓库名称中还应该添加仓库地址(即registry, 注册服务器)作为前缀,只是默认使用的是官方DockerHub服务,该前缀可以忽略。

  例如, docker pull httpd命令相当于docker pull registry.hub.docker.com/httpd命令,即从默认的注册服务器DockerHub Registry中的httpd仓库来下载标记为latest的镜像。

今天关于“Docker镜像的使用以及获取”的内容就给大家讲解到这里,希望对做测试工作的小伙伴有帮助~欢迎大家每天和我一起学习更多涨薪技能哦。


相关文章
  • 亚马逊运营成功转行软件测试,薪资13K表示很满意!2021-09-28 10:13:39
  • 西安川石的兰朋友喊你来当他的学弟学妹啦!2021-09-28 10:13:39
  • 国外的月亮也不一定比国内测试猿的年薪美~2021-09-28 10:13:39
  • 建筑工程专业朱同学成功转行为软件测试人!2021-09-28 10:13:39
  • 财务管理专业转行软件测试月薪甩会计几条街!2021-09-28 10:13:39
  • 只有技术沉淀才能成功上岸,深圳就业薪资13K!2021-09-28 10:13:39
  • 薪资11K!实现自我价值,从掌握一门IT技术开始...2021-09-28 10:13:39
  • 文科生转行软件测试照样拿下高薪15K!2021-09-28 10:13:39
  • 恭喜罗同学喜提19.5K,成功入行软件测试!2021-09-28 10:13:39
  • 毕业1年,迷茫的他最终选择转行软件测试2021-09-28 10:13:39