[Docker]Docker简介

  • 时间:
  • 浏览:1

而Docker提供了三种 更为聪明的土法律法律法律依据,通过容器来打包应用,愿因迁移只需用在新的服务器上启动需用的容器就能只有了。这无疑将节约一定量的宝贵时间,并降低部署过程出先问题图片报告 的风险。

维基百科上的定义如下:

Docker引擎的基础Linux容器(Linux Containers,LXC)技术。

在隔离性方面,传统的虚拟机土法律法律法律依据多了一层额外的隔离。但这不言而喻愿因Docker就不安全。Docker利用Linux系统上的多种防护机制实现了严格可靠的隔离。从1.3版本过后刚开始,Docker引入了安全选项和镜像签名机制,极大地提高了使用Docker的安全性。

IBM DeveloperWorks上给出了关于容器技术的准确描述:容器有效地将由单个操作系统管理的资源划分到孤立的组中,以便更好地在孤立的组之间平衡有冲突的资源使用需求。与虚拟化相比,曾经既不需用 指令级模拟,就说 需用即时编译。容器能只有在核心CPU本地运行指令,而不需用任何专门的解释机制。此外,也防止了准虚拟化(paravirtualization)和系统调用替换中的复杂性性。

Linux容器觉得有的是哪几个全新的概念。最早的容器技术能只有追溯到1982年Unix系列操作系统上的chroot工具(直到今天,主流的Unix、Linux操作系统仍然支持和暗含该工具)。觉得什么技术经没人 来太久年的演化可能十分性旺盛期是什么是什么图片 图片 图片 是什么图片 图片 图片 图片 是什么是什么是什么的句子,有过后可能种种愿因,什么容器技术并没人 被集成到主流的Linux内核中,使用起来不言而喻方便。相似,可能用户要使用OpenVZ技术,就需用先给操作系统打上特定的内核补丁方可使用。

可见,虚拟化的核心是对资源进行抽象,目标往往是为了在同哪几个主机上运行多个系统或应用,从而提高系统资源的利用率,同时带来降低成本、方便管理和容错容灾等好处

可见,Docker以及许多容器技术都属于操作系统的虚拟化许多范畴。

Docker是开源项目。Docker是基于Go语言实现的云开源项目,诞生于2013年初,最初发起者是dotCloud公司。Docker自开源后受到广泛的关注和讨论,目前已有多个相关项目,逐渐形成了围绕Docker的生态体系。dotCloud公司就说 也改名为Docker Inc,专注于Docker相关技术和产品的开发。

Docker容器很启动和停止能只有在秒级实现,这相比传统的虚拟机土法律法律法律依据要快得多。

Docker项目目前已加入了Linux基金会,遵循Apache 2.0协议,全版开源代码均在https://github.com/docker/docker上进行维护。在最近一次Linux基金会的调查中,Docker是仅次于OpenStack的最受欢迎的云计算开源项目。

Docker虚拟化土法律法律法律依据不言而喻拥有众多优势,这跟操作系统的虚拟化自身的特点是分不开的。下面图1-1比较了Docker和常见的虚拟机土法律法律法律依据的不同之处。

Docker容器除了运行其中的应用之外,基本不消耗额外的系统资源,保证应用性能的同时,尽量减小系统开销。传统虚拟机土法律法律法律依据运行N个不同的应用就要启动N个虚拟机(每个虚拟机需用单独分配独占的内存、磁盘等资源),而Docker只需用启动N个隔离的容器,并将应用装进去去容器内即可。

就说 LXC项目借鉴了前人性旺盛期是什么是什么图片 图片 图片 是什么图片 图片 图片 图片 是什么是什么是什么的句子的容器设计理念,并基于一系列新的内核特性实现了更具扩展性的虚拟化容器方案。更加关键的是,LXC被集成到了主流Linux内核中,进而成为Linux系统轻量级容器技术的事实标准。

超虚拟化(Paravirtualization)。次要硬件接口以软件的形式提供给客户机操作系统,客户操作系统需用进行修改,相似早期的Xen。





操作系统级虚拟化内核通过创建多个虚拟的操作系统实例(内核和库)来隔离不同的tcp连接。容器相关技术即在许多范畴。

举个简单的应用场景的例子。假设用户试图基于最常见的LAMP(Linux+Apache+MySQL+PHP)组合来运维哪几个网站。按照传统的做法,首先,需用安装Apache、MySQL和PHP以及它们人个运行所依赖的环境;过后分别对它们进行配置(包括创建离米 的用户、配置参数等);经过一定量的操作后,还需用进行功能测试,看否是工作正常;可能不正常,则愿因更多的时间代价和不可控的风险。能只有想象,可能再再加更多的应用,事情会变得更加难以防止。更为可怕的是,一旦需用服务器迁移(相似从阿里云迁移到腾讯云),往往需用重新部署和调试。什么琐碎而无趣的“体力活”,极大地降低了工作传输速度。

作为三种 轻量级的虚拟化土法律法律法律依据,Docker在运行应用上跟传统的虚拟机土法律法律法律依据相比具有显著优势:

传统土法律法律法律依据是在硬件层面实现虚拟化,需用有额外的虚拟机管理应用和虚拟机操作系统层。Docker容器是在操作系统层面上实现虚拟化,直接复用本地主机的操作系统,有过后更加轻量级

Docker项目的发起人和Docker Inc.的CTO Solomon Hykes认为,Docker在正确的地点、正确的时间顺应了正确的趋势——即高效地构建应用。现在开发者需用能方便地创建运行在云平台上的应用,也就说 说应用需用要能脱离底层机器,有过后同需用用是“任什么时间间任何地点”可获取的。有过后,开发者们需用三种 创建分布式应用tcp连接的土法律法律法律依据,这也是Docker所要能提供的。

次要虚拟化。只针对次要硬件资源进行虚拟化,客户操作系统需用进行修改。现在许多虚拟化技术的早期版本仅支持次要虚拟化。

Docker通过相似Git的操作来方便用户获取、收集和更新应用镜像,指令简明学习成本较低

Docker的主要目标是“Build,Ship and Run Any App,Anywhere”,即通过对应用组件的封装(Packaging)、收集(Distribution)、部署(Deployment)、运行(Runtime)等生命周期的管理,达到应用组件级别的“一次封装,到处运行”。这里的应用组件,既能只有是哪几个Web应用,要能只有是一套数据库服务,甚至是哪几个操作系统或编译器

基于软件的虚拟化从对象所在的层次,又能只有分为应用虚拟化平台虚拟化(通常说的虚拟机技术即属于许多范畴)。其中,前者一般指的是许多模拟设备或Wine曾经的软件。后者又能只有细分为如下哪几个子类:

Docker容器对系统资源需求,一台主机能只有只有同时运行数千个Docker容器。

硬件辅助虚拟化。利用硬件(主就说 CPU)辅助支持(目前x86体系特性上可用的硬件辅助虚拟化技术包括Intel-VT和AMD-V)防止敏感指令来实现全版虚拟化的功能,客户操作系统不用修改,相似VMware Workstation、Xen、KVM。

现在主流的Linux操作系统都可能支持Docker。相似,Redhat RHEL 6.5/CentOS 6.5往上的操作系统、Ubuntu 14.04操作系统,都可能默认暗含Docker软件包。

从大类上分,虚拟化技术可分为基于硬件的虚拟化基于软件的虚拟化。其中,真正意义上的基于硬件的虚拟化技术没人 来太久见,少数如网卡中的单根多IO虚拟化(Single Root I/O Virtualization and Sharing Specification,SR-IOV)等技术,也超出了本书的讨论范畴。

Docker通过Dockerfile配置文件来支持灵活的自动化创建和部署机制,提高工作传输速度。

全版虚拟化。虚拟机模拟全版的底层硬件环境和特权指令的执行过程,客户操作系统不用进行修改。相似VMware Workstation、VirtualBox、QEMU等。

来源于:《Docker技术入门与实战》

在计算机技术中,虚拟化(Virtualization)是三种 资源管理技术,是将计算机的各种实体资源,如服务器、网络、内存及存储等,予以抽象、转换后呈现出来,打破实体特性间的不可切割的障碍,使用户能只有用比曾经的组态更好的土法律法律法律依据来应用什么资源。

虚拟化技术是哪几个通用的概念,在不同领域有不同的理解。在计算领域,一般指的是计算虚拟化(Computing Virtualization),或通常说的服务器虚拟化

Docker基于Linux的多项开源技术提供了高效、敏捷和轻量级的容器方案,有过后支持在多种主流云平台(PaaS)和本地系统上部署。能只有说Docker为应用的开发和部署提供了“一站式”的防止方案。Docker基于Linux的多项开源技术提供了高效、敏捷和轻量级的容器方案,有过后支持在多种主流云平台(PaaS)和本地系统上部署。能只有说Docker为应用的开发和部署提供了“一站式”的防止方案

在LXC的基础上,Docker进一步优化了容器的使用体验。Docker提供了各种容器管理工具(如收集、版本、移植等)让用户不用关注底层的操作,能只有简单明了地管理和使用容器。用户操作Docker容器就像操作哪几个轻量级的虚拟机那样简单。读者能只有简单地将Docker容器理解为三种 沙盒(Sandbox)。每个容器内运行哪几个应用,不同的容器相互隔离,容器之间要能只有建立通信机制容器的创建和停止都十分快速,容器自身对资源的需求也十分有限,远远低于虚拟机。就说 过后,甚至直接把容器当作应用三种 也没人 任何问题图片报告 。