百度
360搜索
搜狗搜索

docker是什么虚拟化,什么是docker详细介绍

本文目录一览: Docker是什么?

Docker是一个开源的引擎,可以轻松的为任何应用创建一个轻量级的、可移植的、自给自足的容器。开发者在笔记本上编译测试通过的容器可以批量地在生产环境中部署,包括Vms、 bare metal、OpenStack集群和其他的基础应用平台。
Docker可以干什么?应用场景:
1.web应用的自动化打包和发布;
2.自动化测试和持续集成、发布;
3.在服务型环境中部署和调整数据库或其他的后台应用;
4.从头编译或者扩展现有的OpenShift或Cloud Foundry平台来搭建自己的PaaS环境。
使用docker有什么好处?
1.简单易操作,简化了以往复杂的应用程序安装步骤,使用docker会变得非常简便。
2.可兼容多种应用,Web应用、后台应用、数据库应用、大数据应用比如Hadoop集群、消息队列等等都可以打包成镜像部署。
3.docker结合云可以做到高性能低价格。
首先,Docker可以理解为是一个集装箱(容器),但事实上它本身并不是容器,它是创建容器的工具,是应用容器引擎。Docker是世界领先的软件容器平台。Docker使用Google公司推出的Go语言进行开发实现,基于Linux内核的cgroup,namespace,以及AUFS类的UnionFS等技术,对进程进行封装隔离,属于操作系统层面的虚拟化技术。Docker能够自动执行重复性任务,例如搭建和配置开发环境,从而解放了开发人员以便他们专注在真正重要的事情上:构建杰出的软件。
时速云是一家全栈云原生技术服务提供商,提供云原生应用及数据平台产品,其中涵盖容器云PaaS、DevOps、微服务治理、服务网格、API网关等。大家可以去体验一下。
满意的话,求给大大的赞。
您好!很高兴为您解答问题,以下是我为您提供的解答内容:
Docker是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的镜像中,然后发布到任何流行的Linux或Windows机器上,也可以实现虚拟化。容器是完全使用沙箱机制,相互之间不会有任何接口。原理:Docker核心解决的问题是利用LXC来实现类似VM的功能,从而利用更加节省的硬件资源提供给用户更多的计算资源。同VM的方式不同, LXC 其并不是一套硬件虚拟化方法 - 无法归属到全虚拟化、部分虚拟化和半虚拟化中的任意一个,而是一个操作系统级虚拟化方法, 理解起来可能并不像VM那样直观。所以我们从虚拟化到docker要解决的问题出发,看看他是怎么满足用户虚拟化需求的。
是国家开发投资公司的简称,国家开发投资公司成立于1995年5月5日,是我国目前最大的国有投资控股公司和53家骨干中央企业之一,员工总数6万多人,注册资本金 184亿元人民币,总资产1758亿元人民币,所有者权益564亿元人民币。
国投集团是国家大型试点企业集团,1997年10月经国家计委、国家经贸委、国家体改委批准成立。截至2011年底,集团资产总计2800亿元。
国投集团以资本为纽带,由母公司、全资子公司、控股子公司和经集团管理委员会批准确认的投资控股企业组成。集团母公司是国家开发投资公司,集团成员为国投电力控股股份有限公司、国投煤炭公司、国投交通公司、国投高科技投资有限公司、国投物流投资有限公司、国投(福建)开发有限公司、国投资本控股有限公司、国投信托有限公司、国投财务有限公司、国投创新(北京)投资基金管理有限公司、国投资产管理公司、中国投资担保有限公司、中国国投国际贸易有限公司、中国电子工程设计院、中国成套设备进出口(集团)总公司、中国高新投资集团公司、国投物业有限责任公司、中投咨询有限公司、二滩水电开发有限责任公司、北京三吉利能源股份有限公司、天津国投津能发电有限公司、国投云南大朝山水电有限公司、靖远第二发电有限公司、厦门华夏国际电力发展有限公司、国投曲靖发电有限公司、国投钦州发电有限公司、国投甘肃小三峡发电有限公司、国投北部湾发电有限公司、国投宣城发电有限责任公司、国投白银风电有限公司、国投张家口风电有限公司、国投伊犁能源有限公司、国投盘江发电有限公司、国投酒泉第一风电公司、国投酒泉第二风电公司、国投新集能源股份有限公司、阳泉市南庄煤炭集团有限责任公司、国投大同能源有限责任公司、国投煤炭郑州能源开发有限公司、国投河南新能开发有限公司、国投新登郑州煤业有限公司、山东省滕州曹庄煤炭有限责任公司、国投昔阳能源有限责任公司、国投晋城能源投资有限公司、国投哈密能源开发有限责任公司、国投曲靖煤炭开发有限公司、国投内蒙古能源有限公司、河南新兴煤炭实业有限公司、新疆国投宝地能源开发有限责任公司、国投新登郑州水泥有限公司、安徽楚源工贸有限责任公司、国投河南煤炭运销有限公司、国投新疆伊犁煤化工有限公司、国投洋浦港有限公司、国投中煤同煤京唐港口有限公司、国投曹妃甸港口有限公司、镇江港务集团有限公司、国投山东临沂路桥发展有限责任公司、国投湄洲湾港口有限公司、国投孚宝洋浦罐区码头有限公司、国投钦州港口有限公司、国投新疆罗布泊钾盐有限责任公司、国投中鲁果汁股份有限公司、亚普汽车部件有限公司、国投远东航运有限公司、国投煤炭运销有限公司、国投京闽(福建)工贸有限公司、厦门京闽能源实业有限公司、国投山西煤炭运销有限公司、国投海运发展有限公司、海峡汇富产业投资基金管理有限公司、国投中谷期货有限责任公司、北京汽车玻璃钢有限公司等70多家大型企业。
国投集团充分发挥国有资本的带动力、控制力和影响力,将全面落实科学发展观,大力发展关系国计民生的基础性、资源性产业和高新技术产业,增强国有经济实力;加快以金融业为龙头的服务业的发展,巩固和发展实业与服务业相互支撑,协同发展的良好格局,同时,积极探索国有资产经营业务的发展模式,在国民经济发展和国有经济布局结构调整中发挥更大的作用。
Docker是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的镜像中,然后发布到任何流行的Linux或Windows机器上,也可以实现虚拟化。容器是完全使用沙箱机制,相互之间不会有任何接口。原理:Docker核心解决的问题是利用LXC来实现类似VM的功能,从而利用更加节省的硬件资源提供给用户更多的计算资源。同VM的方式不同, LXC 其并不是一套硬件虚拟化方法 - 无法归属到全虚拟化、部分虚拟化和半虚拟化中的任意一个,而是一个操作系统级虚拟化方法, 理解起来可能并不像VM那样直观。所以我们从虚拟化到docker要解决的问题出发,看看他是怎么满足用户虚拟化需求的。
Docker是世界领先的软件容器平台。Docker使用Google公司推出的Go语言进行开发实现,基于Linux内核的cgroup,namespace,以及AUFS类的UnionFS等技术,对进程进行封装隔离,属于操作系统层面的虚拟化技术。 由于隔离的进程独立于宿主和其它的隔离的进程,因此也称其为容器,但docker本身并不是容器,它是创建容器的工具,是应用容器引擎。
Docke最初实现是基于LXC。LXC为Linux Container的简写。可以提供轻量级的虚拟化,以便隔离进程和资源,而且不需要提供指令解释机制以及全虚拟化的其他复杂性。相当于C++中的NameSpace。容器有效地将由单个操作系统管理的资源划分到孤立的组中,以更好地在孤立的组之间平衡有冲突的资源使用需求。
docker并不是LXC替代品,docker底层使用了LXC来实现,LXC将linux进程沙盒化,使得进程之间相互隔离,并且能够课哦内阁制各进程的资源分配。在LXC的基础之上,docker提供了一系列更强大的功能。
Docker能够自动执行重复性任务,例如搭建和配置开发环境,从而解放了开发人员以便他们专注在真正重要的事情上:构建杰出的软件。
用户可以方便地创建和使用容器,把自己的应用放入容器。容器还可以进行版本管理、复制、分享、修改,就像管理普通的代码一样。
docker的三个概念:
镜像(Image):类似于虚拟机中的镜像,是一个包含有文件系统的面向Docker引擎的只读模板。任何应用程序运行都需要环境,而镜像就是用来提供这种运行环境的。例如一个Ubuntu镜像就是一个包含Ubuntu操作系统环境的模板,同理在该镜像上装上Apache软件,就可以称为Apache镜像。
容器(Container):类似于一个轻量级的沙盒,可以将其看作一个极简的Linux系统环境(包括root权限、进程空间、用户空间和网络空间等),以及运行在其中的应用程序。Docker引擎利用容器来运行、隔离各个应用。容器是镜像创建的应用实例,可以创建、启动、停止、删除容器,各个容器之间是是相互隔离的,互不影响。注意:镜像本身是只读的,容器从镜像启动时,Docker在镜像的上层创建一个可写层,镜像本身不变。
仓库(Repository):类似于代码仓库,这里是镜像仓库,是Docker用来集中存放镜像文件的地方。注意与注册服务器(Registry)的区别:注册服务器是存放仓库的地方,一般会有多个仓库;而仓库是存放镜像的地方,一般每个仓库存放一类镜像,每个镜像利用tag进行区分,比如Ubuntu仓库存放有多个版本(12.04、14.04等)的Ubuntu镜像。
docker的用途:
官方给的是bulid ship run,就是编译、装载、运行。就是实现了应用的封装、部署、运行的生命周期管理只要在glibc的环境下,都可以运行。
谐云自主研发的容器云平台,是基于Docker和Kubernetes技术构建的一套完整IT标准化和自动化框架,以“面向终态、优化IT资源”为目标的新一代PaaS平台,能够提高企业的IT管理能力,在降低运营成本和风险的同时,获得更高的运维效率,保障业务稳定运行和高效迭代。

Docker基本概念

由于不同的机器有不同的操作系统,以及不同的库和组件,在将一个应用部署到多台机器上需要进行大量的环境配置操作。
Docker 主要解决环境配置问题,它是一种虚拟化技术,对进程进行隔离,被隔离的进程独立于宿主操作系统和其它隔离的进程。使用 Docker 可以不修改应用程序代码,不需要开发人员学习特定环境下的技术,就能够将现有的应用程序部署在其它机器上。

虚拟机也是一种虚拟化技术,它与 Docker 最大的区别在于它是通过模拟硬件,并在硬件上安装操作系统来实现。

1.启动速度
启动虚拟机需要先启动虚拟机的操作系统,再启动应用,这个过程非常慢;
而启动 Docker 相当于启动宿主操作系统上的一个进程。
2.占用资源
虚拟机是一个完整的操作系统,需要占用大量的磁盘、内存和 CPU 资源,一台机器只能开启几十个的虚拟机。
而 Docker 只是一个进程,只需要将应用以及相关的组件打包,在运行时占用很少的资源,一台机器可以开启成千上万个 Docker。
除了启动速度快以及占用资源少之外,Docker 具有以下优势:
1.更容易迁移
提供一致性的运行环境。已经打包好的应用可以在不同的机器上进行迁移,而不用担心环境变化导致无法运行。
2.更容易维护
使用分层技术和镜像,使得应用可以更容易复用重复的部分。复用程度越高,维护工作也越容易。
3.更容易扩展
可以使用基础镜像进一步扩展得到新的镜像,并且官方和开源社区提供了大量的镜像,通过扩展这些镜像可以非常容易得到我们想要的镜像。
持续集成
持续集成指的是频繁地将代码集成到主干上,这样能够更快地发现错误。
Docker 具有轻量级以及隔离性的特点,在将代码集成到一个 Docker 中不会对其它 Docker 产生影响。
提供可伸缩的云服务
根据应用的负载情况,可以很容易地增加或者减少 Docker。
搭建微服务架构
Docker 轻量级的特点使得它很适合用于部署、维护、组合微服务。
镜像是一种静态的结构,可以看成面向对象里面的类,而容器是镜像的一个实例。
镜像包含着容器运行时所需要的代码以及其它组件,它是一种分层结构,每一层都是只读的(read-only layers)。构建镜像时,会一层一层构建,前一层是后一层的基础。镜像的这种分层存储结构很适合镜像的复用以及定制。
构建容器时,通过在镜像的基础上添加一个可写层(writable layer),用来保存着容器运行过程中的修改。

docker是什么意思

Docker是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的镜像中,然后发布到任何流行的Linux或Windows机器上,也可以实现虚拟化。容器是完全使用沙箱机制,相互之间不会有任何接口。
原理:
Docker核心解决的问题是利用LXC来实现类似VM的功能,从而利用更加节省的硬件资源提供给用户更多的计算资源。同VM的方式不同, LXC 其并不是一套硬件虚拟化方法 - 无法归属到全虚拟化、部分虚拟化和半虚拟化中的任意一个,而是一个操作系统级虚拟化方法, 理解起来可能并不像VM那样直观。所以我们从虚拟化到docker要解决的问题出发,看看他是怎么满足用户虚拟化需求的。

docker与虚拟化的联系与区别

虚拟化技术是一个总称,是一系列实现虚拟技术的统称。从广义上来说,虚拟化技术包括了虚拟机技术和容器技术,
所谓虚拟化技术最大的特点就是将一个真实的机器进行虚拟地分割,然后分割出来的部分可以独立使用
有人说:“Docker是虚拟化技术。”
有人却说:“虚拟化与Docker容器之争。”
那么,到底Docker是不是虚拟化技术,如果是,为啥又说“之争?”
其实,准确来说,Docker是一种容器级虚拟化技术。
关于虚拟机,官方的说法是:虚拟机(Virtual Machine)指通过软件模拟的具有完整硬件系统功能的、运行在一个完全隔离环境中的完整计算机系统。
简单来说:我们通过虚拟机可以把一台硬件划分为多个机器,每个机器都能独立运行。
容器技术也能实现在一台硬件机器上虚拟出多个容器,每个容器中都可以放置一个互相隔离的服务器。所以,我们知道,容器其实也采用的是虚拟的方式进行,只不过,同等条件下,容器技术会比虚拟机技术效率要高,但是容器中没有包含独立的操作系统,虚拟机中包含独立的操作系统,所以每台虚拟机中的功能会比每个容器的功能要多些,正因为虚拟机带有很多东西,所以占的系统资源要大,效率要低些。
所以容器具有简明、轻快等特点。
docker运行步骤
Docker是一个C/S类型的架构。一般来说,用户通过client端进行相应操作,然后对应操作指令会传递到server端,然后交由server端的Docker daemon处理
Docker的内部三大核心组件
1、Docker images
Docker images也叫做Docker镜像,镜像一般是只读模版,用户不可以直接对其进行写入操作。使用镜像可以很轻松地创建容器。
目的也就是更好的保证数据的安全
2、Docker containers
Docker containers也叫做Docker容器,容器与容器之间互相隔离、互不干扰,容器可以进行被开始、启动、停止、删除等操作。
开发者快速地把自己的应用打包到容器中进行发布
3、Docker registries
Docker registries也叫做Docker仓库,仓库主要是用来下载和上传镜像的,仓库分为公有仓库和私有仓库。

如何通俗解释Docker是什么?

Docker是基于Go语言进行开发实现,一个开源的应用容器引擎。
采用Linux内核的cgroup,namespace,以及AUFS类的Union FS等技术,对进程进行封装隔离,也可以实现虚拟化。
隔离的进程独立于宿主和其他的隔离进程,因此也称其为容器。
可以将Docker容器理解为一种轻量级的沙盒,每个容器内运行着一个应用,不同的容器相互隔离,容器之间也可以通过网络互相通信。
容器的创建和停止十分快速,几乎跟创建和终止原生应用一致;
另外,容器自身对系统资源的额外需求也十分有限,远远低于传统虚拟机。
很多时候,直接将容器当作应用本身也没有任何问题。
为什么使用docker
对于开发和运维人员来说,最希望的效果就是一次创建或者配置后,可以在任意地方、任意时间让应用正常运行。
对于算法研究人员来说,可能不同的算法需要不同版本的软件,那么在同一个环境中就会存在冲突。
而docker 的环境隔离就可以很方便用于不同环境的配置。
具体来说,docker优势主要有以下几个方面:
1、快速交付和部署
使用docker,开发人员可以使用镜像快速构建一套标准的开发环境;
开发完成后,测试和运维人员可以使用完全相同的环境部署代码,只要是开发测试过的代码就可以确保在生产环境无缝运行。
docker可以快速创建和删除容器,实现快速迭代。
2、高效的资源利用
运行docker容器不需要额外的虚拟化管理程序的支持。
docker是内核级的虚拟化,可以实现更高的性能,同时对资源的额外需求很低。
3、轻松的迁移和扩展
docker容器几乎可以在任意的平台上运行,包括物理机、虚拟机、公有云、私有云、服务器等。
同时支持主流的操作系统发行版本,这种兼容性让用户可以在不同平台间轻松的迁移应用。
4、简单的更新管理
使用Dockerfile生成镜像的方式,只需要小小的配置修改,就可以替代以往大量的更新工作,所有的修改都以增量的方式进行分发和更新,从而实现自动化且高效的容器管理。
通俗解释docker就是集装箱。
Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的镜像中,然后发布到任何流行的Linux或Windows机器上,也可以实现虚拟化。容器是完全使用沙箱机制,相互之间不会有任何接口。
一个完整的Docker有以下几个部分组成:
DockerClient客户端。
Docker Daemon守护进程。
Docker Image镜像。
DockerContainer容器。
在docker的网站上提到了docker的典型场景:
Automating the packaging and deployment of applications(使应用的打包与部署自动化)。
Creation of lightweight, private PAAS environments(创建轻量、私密的PAAS环境)。
Automated testing and continuous integration/deployment(实现自动化测试和持续的集成/部署)。
Deploying and scaling web apps, databases and backend services(部署与扩展webapp、数据库和后台服务)。

什么是docker

美 ['dɑk?r]英 ['d?k?(r)]
n.码头工人;船坞工人;泊坞窗;搬运工人
复数:dockers
例句:
Some people turn up their noses if you say your father was a miner or a docker .
如果你说你的父亲当过矿工或码头工人,有人就瞧不起你。
来自必应翻译
希望帮到你,望采纳,满意请点击:采纳
Docker是世界领先的软件容器平台。Docker使用Google公司推出的Go语言进行开发实现,基于Linux内核的cgroup,namespace,以及AUFS类的UnionFS等技术,对进程进行封装隔离,属于操作系统层面的虚拟化技术。 由于隔离的进程独立于宿主和其它的隔离的进程,因此也称其为容器,但docker本身并不是容器,它是创建容器的工具,是应用容器引擎。
Docke最初实现是基于LXC。LXC为Linux Container的简写。可以提供轻量级的虚拟化,以便隔离进程和资源,而且不需要提供指令解释机制以及全虚拟化的其他复杂性。相当于C++中的NameSpace。容器有效地将由单个操作系统管理的资源划分到孤立的组中,以更好地在孤立的组之间平衡有冲突的资源使用需求。
docker并不是LXC替代品,docker底层使用了LXC来实现,LXC将linux进程沙盒化,使得进程之间相互隔离,并且能够课哦内阁制各进程的资源分配。在LXC的基础之上,docker提供了一系列更强大的功能。
Docker能够自动执行重复性任务,例如搭建和配置开发环境,从而解放了开发人员以便他们专注在真正重要的事情上:构建杰出的软件。
用户可以方便地创建和使用容器,把自己的应用放入容器。容器还可以进行版本管理、复制、分享、修改,就像管理普通的代码一样。
docker是一个开源项目,诞生于2013年初,最初是dotCloud公司内部的一个业余项目。它基于Google公司推出的GO语言实现,项目后来加入了Linux基金会,遵从了apache2.0协议,项目代码在GitHub上进行维护。
docker自开源后受到广泛的关注和讨论,以至于dotcloud公司后来都改名为docker lnc。Redhat已经在其rhel6.5中集中支持docker,Google也在其PaaS产品中广泛应用。
docker项目的目标是实现轻量级的操作系统虚拟化解决方案,docker的基础是Linux容器等技术。

什么是Docker

Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化。容器是完全使用沙箱机制,相互之间不会有任何接口(类似 iPhone 的 app)。几乎没有性能开销,可以很容易地在机器和数据中心中运行。最重要的是,他们不依赖于任何语言、框架包括系统。
Docker是一个开源的应用容器引擎,它基于Go语言开发,并遵从Apache2.0开源协议。使用Docker可以让开发者封装他们的应用以及依赖包到一个可移植的容器中,然后发布到任意Linux机器上,也可以实现虚拟化。Docker容器完全使用沙箱机制,相互之间不会有任何接口,这保证了容器之间的安全性。
Docker诞生于2013年初,目前有两个版本:Community Edition(CE,社区版)和Enterprise
Edition(EE,企业版)。
Docker有哪些特点?
1、更高效的利用系统资源
Docker对系统资源的利用率很高,无论是应用执行速度,内存损耗或者文件存储速度,都要比传统虚拟机技术更高效。因此,对比虚拟化技术,一个相同配置的主机往往可以运行更多数量的应用。
2、更快速的启动时间
传统的虚拟化技术启动应用服务往往需要数分钟,而Docker容器应用,由于直接运行于宿主内核,无需启动完整的操作系统,因此可以做到秒级,甚至毫秒级的启动时间,大大节约了开发测试,部署的时间。
3、一致的运行环境
开发过程中常见的一个问题是环境一致问题,由于开发环境、测试环境、生产环境不一致,导致有些bug并未在开发过程中发现。而Docker的镜像提供了除内核外完整的运行时环境,确保环境一致性,从而不会在出现这段代码在我机器上没问题这类问题。
4、持续支付和部署
对开发和运维人员来说,最希望就是一次创建和部署,可以在任意地方运行。而且使用Docker
file使镜像构建透明化,不仅仅开发团队可以理解应用运行环境,也方便运维团队理解应用运行所需条件,帮助更好的生产环境中部署该镜像。
5、更轻松的迁移
由于Docker确保了执行环境的一致性,使得应用的迁移更加容易。Docker可以在很多平台上运行,无论是物理机、虚拟机、公有云、私有云,甚至是笔记本、其运行结果是一致的。因此用户可以很轻易的将在一个平台上运行的应用,迁移到另一个平台上,而不用担心运行环境的变化导致应用无法正常运行的情况。
6、更轻松的维护和扩展
Docker使用的分层存储以及镜像技术,使得应用重复部分的复用更为容易,也使得应用的维护更新更加简单,基于基础镜像进一步扩展镜像也变得十分简单。此外,Docker团队同各个开源项目团队一起维护了一大批高质量的官网镜像,既可以直接在生产环境使用,又可以作为基础进一步定制,大大降低了应用服务的镜像制作成本。

阅读更多 >>>  试说明无线网络在生活中的应用

Docker究竟是什么,为什么这么流行,它的优点和缺陷有哪些

好多公司都用docker,就是简便轻巧
docker是一种虚拟机,和其他虚拟机不同在于无界面化和更轻量化,唯一的作用就是同一应用多开,不是同一应用,它的存在价值不大,想想看吧,在应用和底层本来就有一个操作系统,又多层docker,不是浪费资源嘛。
  Docker是什么?
  简单得来说,Docker是一个由GO语言写的程序运行的“容器”(Linux containers, LXCs); 目前云服务的基石是操作系统级别的隔离,在同一台物理服务器上虚拟出多个主机。Docker则实现了一种应用程序级别的隔离; 它改变我们基本的开发、操作单元,由直接操作虚拟主机(VM),转换到操作程序运行的“容器”上来。
  Docker是为开发者和系统管理员设计的,用来发布和运行分布式应用程序的一个开放性平台。由两部分组成:
  Docker Engine: 一个便携式、轻量级的运行环境和包管理器。(注* 单OS vs 单线程,是不是跟NodeJS特别像?)
  Docker Hub: 为创建自动化工作流和分享应用创建的云服务组成。(注* 云端镜像/包管理 vs npm包管理,是不是跟npm特别像?)
  从2013年3月20日,第一个版本的Docker正式发布到 2014年6月Docker 1.0 正式发布,经历了15个月。 虽然发展历程很短,但Docker正在有越来越流行的趋势。
  其实Container技术并非Docker的创新,HeroKu, NodeJitsu 等云服务商都采用了类似这种轻量级的虚拟化技术,但Docker是第一个将这这种Container技术大规模开源并被社区广泛接受的。
  好的部分
  Docker相对于VM虚拟机的优势十分明显,那就是轻量和高性能和便捷性, 以下部分摘自:KVM and Docker LXC Benchmarking with OpenStack
  快
  运行时的性能可以获取极大提升(经典的案例是提升97%)
  管理操作(启动,停止,开始,重启等等) 都是以秒或毫秒为单位的。
  敏捷
  像虚拟机一样敏捷,而且会更便宜,在bare metal(裸机)上布署像点个按钮一样简单。
  灵活
  将应用和系统“容器化”,不添加额外的操作系统,
  轻量
  你会拥有足够的“操作系统”,仅需添加或减小镜像即可。在一台服务器上可以布署100~1000个Containers容器。
  便宜
  开源的,免费的,低成本的。由现代Linux内核支持并驱动。注* 轻量的Container必定可以在一个物理机上开启更多“容器”,注定比VMs要便宜。
  生态系统
  正在越来越受欢迎,只需要看一看Google的趋势就知道了,docker or LXC.
  还有不计其数的社区和第三方应用。
  云支持
  不计其数的云服务提供创建和管理Linux容器框架。
  有关Docker性能方面的优势,还可参考此IBM工程师对性能提升的评测,从各个方面比VMs(OS系统级别虚拟化)都有非常大的提升。转载,仅供参考。

Docker是什么?它比虚拟机强在哪里?

Docker容器为资源分割和调度的基本单位,封装整个软件运行时环境,为开发者和系统管理员设计的,用于构建、发布和运行分布式应用的平台。它是一个跨平台、可移植并且简单易用的容器解决方案。Docker能在容器内部快速自动化地部署应用,并通过操作系统内核技术(namespaces、cgroups等)为容器提供资源隔离与安全保障。
Docker和虚拟机的对比1,每台虚拟机都需要有自己的操作系统,虚拟机一旦被开启,预分配给它的资源将全部被占用。
2.每一台虚拟机包括应用,必要的二进制和库,以及一个完整的用户操作系统。
3.而容器技术是和我们的宿主机共享硬件资源及操作系统,可以实现资源的动态分配。
4.Docker 启动快速属于秒级别。虚拟机通常需要几分钟去启动。
5.Docker 需要的资源更少。Docker 在操作系统级别进行虚拟化,Docker 容器和内核交互,几乎没有性能损耗,性能优于通过Hypervisor 层与内核层的虚拟化。
6.容器包含应用和其所有的依赖包,但是与其他容器共享内核。容器在宿主机操作系统中,在用户空间以分离的进程运行。
7.容器还赋予我们对资源更多的精细化控制能力,让我们的基础设施效率更高。
8.容器可以帮助保证应用程序快速、可靠、一致地部署,其间不受部署环境的影响。
我来换个方式说一下吧。
如果不讲究的话,你把docker近似的看成虚拟机问题也不大。 (刚开始可以不用纠结那些公用内核,系统调用,应用进程之类的)
docker嘛,一个字就是快。两个字就是省心。
你vmware装个centos 要多久,保守估计算上下载系统镜像到安装完也要个20分钟吧。 docker呢,一个docker pull centos 命令, 几秒钟搞定了。 接着连进去随你怎么折腾。
但是,玩是不会赚钱的,得向外提供服务才能赚钱,比如用httpd搭建一个网页服务器。 难不成我还得自己进去配置, no no no ,不用的, 直接在配置文件里写一条命令,或者干脆直接下载一个带http的镜像,多了几十毫秒,就搞定了。 软件再多,也分分钟搞定,再加上k8s这样的管理docker软件。 一个yaml格式的配置文件 加上一条超方便的kubectl apply 命令,几秒钟就可以搭建一个包含超多软件的复杂集群。效率和速度真是让人叹为观止。
因为docker快,现在连解决问题的思路都有一些变化, 比如docker里面的某个httpd服务不可用了,你说东西不能用了得找原因修吧, 但是因为启动一个太快了。 所以干脆先别修,直接在启动一个新的docker,顶上去。 那个坏了的,要么直接扔掉,要么等待白天工作时间载慢慢找原因。
所以docker 比虚拟机,个人感觉就是单个系统启动快,复杂系统配置快,东西坏了直接扔带来的系统恢复速度快。
话说回来,要是真不在意启动时间和运行时间,虚拟机中完整的系统哪点不比docker强?
Docker是一个开源的应用容器引擎,可以让开发者将自身的应用或者软件移植到镜像中,然后发布到任何一个Windows机器或者Linux机器上,当然Docker也可以实现虚拟化。
Docker是一个开源的应用容器引擎,可以让开发者将自身的应用或者软件移植到镜像中,然后发布到任何一个Windows机器或者Linux机器上,当然Docker也可以实现虚拟化。而一个完整的Docker是由:Docker Client客户端,Docker Daemon 守护进程,Docker Image 镜像和Docker Container 容器来组成的。容器是完全采用沙箱机制,相互之间不会有任何接口。
而Docker比虚拟机强大的地方在于:
第一:启动时间:Docker容器是秒级启动的,而虚拟机时分钟级启动,在启动速度方面,Docker就能够完美地碾压了虚拟机。
第二:占用空间和性能:在占用空间和性能方面,Docker容器镜像比虚拟机要小得多且性能要比虚拟机更强。
第三:使用要求:虚拟机是基于硬件的虚拟化,其CPU也要有支持虚拟化的支持,Docker共享宿主机内核,可运行在主流的Linux,不用考虑CPU是否支持虚拟化技术。

网站数据信息

"docker是什么虚拟化,什么是docker"浏览人数已经达到21次,如你需要查询该站的相关权重信息,可以点击进入"Chinaz数据" 查询。更多网站价值评估因素如:docker是什么虚拟化,什么是docker的访问速度、搜索引擎收录以及索引量、用户体验等。 要评估一个站的价值,最主要还是需要根据您自身的需求,如网站IP、PV、跳出率等!