认识Docker

Docker是一个开源的应用容器引擎,基于Go语言,它允许开发者将应用及其依赖打包到可移植容器中,实现跨平台快速部署。相比虚拟机,Docker启动速度快、资源占用少且具有优秀的隔离性和迁移性。主要概念包括镜像、容器和仓库,其中镜像是只读模板,容器是运行实例,仓库则用于存储和分发镜像。
摘要由CSDN通过智能技术生成
Docker概念

来源于菜鸟编程网 https://www.runoob.com/docker/docker-tutorial.html

  Docker 是一个开源的应用容器引擎,基于 Go 语言 并遵从 Apache2.0 协议开源。
  Docker 可以让开发者打包他们的应用以及依赖包到一个轻量级、可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化。
  容器是完全使用沙箱机制,相互之间不会有任何接口(类似 iPhone 的 app),更重要的是容器性能开销极低。
  Docker 从 17.03 版本之后分为 CE(Community Edition: 社区版) 和 EE(Enterprise Edition: 企业版),我们用社区版就可以了。 

Docker 官网:https://www.docker.com
Github Docker 源码:https://github.com/docker/docker-ce

使用Docker的优点
  • 快速分发和部署
  • 一次创建或配置,之后可以在任意地方任意时间让应用正常运行。
  1. 更快速的交付和部署。
  2. 更高效的资源利用。
  3. 更轻松的迁移和扩展。
  4. 更简单的更新管理。
与虚拟机的比较

Docker 作为一种轻量级的虚拟化方式,启动和停止可以在秒级实现;对系统资源需求很少(在IBM服务器上已经实现了同时运行10K量级的容器实例);用过类似Git设计理念的操作来方便用户获取、分发和跟新应用镜像,存储复用,增量更新;通过Dockerfile支持灵活的自动化创建和部署机制,提高工作效率,使流程标准化。

特性容器虚拟机
启动速度秒级分钟级
性能接近原生较弱
内存代价很小较多
硬盘使用一般为MB一般为GB
运行密度单机支持上千个容器一般几十个
隔离性安全隔离完全隔离
迁移性优秀一般
基于软件的虚拟化

应用虚拟化:一般指的是一些模拟设备或诸如Wine这样的软件。
平台虚拟化:可细分下面几个子类。

  1. 完全虚拟化
虚拟机模拟完整的底层硬件环境和特权指令的执行过程,客户操作系统无需进行修改。
例如IBM p和z 系列的虚拟化、VMware Workstation、VirtualBox、QEMU等。
  1. 硬件辅助虚拟化
利用硬件(主要是CPU)辅助支持(目前x86体系结构上可用的硬件辅助虚拟化技术包括Intel-VT和AMD-V)处理敏感指令来实现完全虚拟化的功能,
客户操作系统无需修改,例如 VMware Workstation、Xen、KVM。
  1. 部分虚拟化
只针对部分硬件资源进行虚拟化,客户操作系统需要进行修改。
现在有些虚拟化技术的早期版本仅支持部分虚拟化。
  1. 准虚拟化(paravirtualization)
部分硬件接口以软件的形式提供给客户机操作系统,
客户操作系统需要进行修改,例如早期的Xen.
  1. 操作系统级虚拟化
内核通过创建多个虚拟的操作系统实例(内核和库)来隔离不同的进程。
容器相关技术即在这个范畴,如Docker。不需要额外的supervisor支持。

在这里插入图片描述

三大核心概念

镜像(Image)

类似于虚拟机镜像,可以理解为一个只读的模板是创建Docker容器的基础。通过版本管理和增量的文件系统,Docker提供了一套 十分简单的机制来创建和更新现有的镜像,用户甚至可以从网上下载一个已经做好的应用镜像,并直接使用。

容器(Container)

类似于一个轻量级的沙箱,用来运行和隔离应用。是从镜像创建的应用运行实例。可以将其启动、开始、停止、删除,而这些容器都是彼此相互隔离、互不可见的。
可以把容器看做是一个简易版的Linux系统环境以及运行在其中的应用程序打包而成的盒子。

镜像自身是只读的。容器从镜像启动的时候,会在镜像的最上层创建一个可写层。
仓库(Repository)

类似于代码仓库,是集中存放镜像文件的场所。根据所存储的镜像是否公开可分为公开仓库(Public)和私有仓库(Private)。

 仓库注册服务器是存放仓库的地方,其上可存放多个仓库。
 每个仓库集中存放某一类镜像,可包括多个镜像文件,通过不同的标签(tag)来进行区分。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值