第2章 Docker核心概念与安装--2.1 基本概念

基本概念


Docker 包括五个基本概念

Docker 客户端 

Docker daemon

Docker 镜像(Image)

Docker 容器(Container)

Docker 仓库(Repository)

以下简单介绍。

  • 1. Docker 客户端

Docker 是一个典型的 C/S 结构的引用程序,但在发不上,Docker 将客户端和服务器统一在同一个二进制文件中,不过,这只是对Linux系统而言,在其他平台如Mac上,Docker只提供了客户端。

Docker 客户端一般通过Docker command 来发起请求,另外。也可以通过 Docker 提供的一套 RESTful API来发起请求,这种方式更多地应用在应用程序的代码中。

  • 2. Docker Daemon 

Docker Daemon 也可以被理解成Docker Server ,另外,人们也常用Docker Engine 来直接描述他,因为这实际上就是驱动整个DOcker功能的核心引擎。

简单地说,Docker daemon 实现的功能就是接收客户端发来的请求,并实现请求所要求的功能,同时针对请求返回相应的结果。在功能的实现上,因为涉及了容器,镜像,存储等多方面的内容,daemon 内部的机制会复杂很多,涉及了多个模块的实现和交互。

  • 3. Docker 镜像

Docker 镜像(Image)类似于虚拟机镜像,可以理解为一个面向 Docker 引擎的只读模板,包含了文件系统。

例如:一个惊喜可以只包含一个完整的Ubuntu 操作系统环境,可以把它称作一个Ubuntu 镜像。镜像也可以安装了 Apache 应用程序(或用户需要的其他软件),可以把它称作为一个 Apache 镜像。

镜像时创建 Docker 容器的基础。通过版本管理和增量的文件系统,Docker 提供了一套十分简单的机制来创建和更新现有的镜像,用户甚至可以从网上下载一个已经做好的应用镜像,并通过简单的命令就可以直接使用。

  • 4. Docker 容器

在 Docker 的功能和概念中,容器是一个核心内容,相对于传统虚拟化,它作为一项基础技术在性能上给 Docker 带来了极大优势。

在功能上,Docker 通过 Libcontainer 实现对容器生命周期的管理,信息的设置和查询,以及监控和通信等功能。而容器也是对镜像的完美诠释,容器以镜像为基础 ,同时又为镜像提供了一个标准的和隔离的执行环境。

在概念上,容器则很好地诠释了 Docker 集装箱的概念,集装箱可以存放任何货物,可以通过邮轮将货物运输到世界各地。运输集装箱的邮轮和装卸集装箱的码头都不用关心集装箱里的货物,这是一种标准的集装和运输方式。类似的,Docker的容器就是“软件界的集装箱”,它可以安装任意的软件和库文件,做任意的运行环境配置。开发及运维人员在转移和部署的时候,不用关心容器里装了什么软件,也不用了解它们是如何配置的。而管理容器的 Docker 引擎同样不关心容器里的内容,它只要像码头工人一样让这个容器运行起来就可以了,就像所有其他容器那样。

Docker 利用容器运行和隔离应用。容器时从镜像创建的应用运行实例,可以将其启动,开始,停止,删除,而这些容器都是相互隔离、互不可见的。

  • 5. Docker 仓库

Docker 仓库(Registry)类似于代码仓库,是Docker 集中存放镜像文件的场所。

两个概念:Docker 仓库和注册服务器(Registry)。实际上,注册服务器是存放仓库的地方,其上往往存放着多个仓库。每个仓库集中存放某一类镜像,往往包含多个镜像文件,通过不同的标签(tag)来进行区分。例如存放 Ubuntu 操作系统镜像的仓库,成为 Ubuntu 仓库,其中可能包括14.04、12.04等不同版本的镜像。仓库注册服务器的示例如图2-1所示。

根据所存储的镜像公开分享与否,Docker 仓库可以分为公开仓库(Public)和私有仓库(Private)。

目前,最大的公开仓库是 Docker Hub,存放了数量庞大的镜像供用户下载。国内的公开仓库包括阿里云,时速云等,可以提供稳定的国内访问。

当然,用户如果不希望公开分享自己的镜像文件,Docker 也支持用户在本地网络内创建一个只能自己访问的私有仓库。

当用户创建了自己的镜像之后就可以使用 docker push 命令将它上传到指定的公有或私有仓库。这样用户下次再另外一台机器上使用该镜像时,只需将其从仓库上 docker pull 下来就可以了。

可以看出, Docker 利用仓库管理镜像的设计理念与 Git 非常相似。

关于daemon、镜像、容器、仓库的各类操作,后续会讲...

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值