Docker简述

docker是什么?

Docker,目前的定义是一个开源的容器引擎,可以方便地对容器进行管理。其对镜像的打包封装,以及引入的Docker Registry对镜像的统一管理,构建了方便快捷的“Build,Ship and Run”流程,它可以统一整个开发、测试和部署的环境和流程,极大地减少运维成本

docker能做什么 ?

  • 简化配置
  • 容器最重要的功能,源代码、运行环境、配置都打包到一个容器,运行在不同的系统上
  • 减少在部署时产生的错误
  • 代码管理
  • 提高开发效率
  • 隔离应用
  • 整合服务器
  • 调试能力
  • 快速部署

docker架构图

在这里插入图片描述
从上面可以看到,Docker并没有传统虚拟化中的Hypervisor层。因为Docker是基于容器技术的轻量级虚拟 化,相对于传统的虚拟化技术,省去了Hypervisor层的开销,而且其虚拟化技术是基于内核的Cgroup和 Namespace技术,处理逻辑与内核深度融合,所以在很多方面,它的性能与物理机非常接近

docker基本架构组成

在这里插入图片描述

  • Docker客户端:Docker是一个典型的C/S架构的应用程序,但在发布上,Docker将客户端和服务器端统一在 同一个二进制文件中,不过,这只是对于Linux系统而言的,在其他平台如Mac上,Docker只提供了客户端。 Docker客户端一般通过Docker command来发起请求,另外,也可以通过Docker提供的一整套RESTful API 来发起请求,这种方式更多地被应用在应用程序的代码中。
  • Docker daemon:docker daemon就是我们说的docker engine。简单地说,Docker daemon实现的功能就 是接收客户端发来的请求,并实现请求所要求的功能,同时针对请求返回相应的结果。
  • Docker容器:docker容器则很好地诠释了Docker集装箱的理念,集装箱可以存放任何货物,可以通过邮轮将 货物运输到世界各地。运输集装箱的邮轮和装载卸载集装箱的码头都不用关心集装箱里的货物,这是一种标 准的集装和运输方式。类似的,Docker的容器就是“软件界的集装箱”,它可以安装任意的软件和库文件,做 任意的运行环境配置。开发及运维人员在转移和部署应用的时候,不用关心容器里装了什么软件,也不用了 解它们是如何配置的。而管理容器的Docker引擎同样不关心容器里的内容,它只要像码头工人一样让这个容 器运行起来就可以了,就像所有其他容器那样。
  • Docker镜像:与容器相对应,如果说容器提供了一个完整的、隔离的运行环境,那么镜像则是这个运行环境 的静态体现,是一个还没有运行起来的“运行环境”。
  • Registry:Registry是一个存放镜像的仓库,它通常被部署在互联网服务器或者云端。

为什么docker比虚拟机快?

  • docker不需要实现硬件虚拟化,运行在docker容器上的程序直接使用的是实际物理机上的硬件资 源,因此在CPU,内存等资源上docker有明显的优势。
  • docker利用的是宿主机上的内核,因此当新建一个容器时,docker不需要和虚拟机一样去加载一个 操作系统,避免了寻址等费时行为,利用宿主机的操作系统
    在这里插入图片描述
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值