1、什么是Dokcer?服务器
Docker是一个开源项目, 诞生于2013年初, 最初是dotCloud公司内部的一个业余项目。 它基于Google公司推出的Go语言实现。 项目后来加入了Linux基金会, 听从了Apache 2.0协议, 项目代码在GitHub上进行维护。运维
Docker自开源后受到普遍的关注和讨论, 以致于dotCloud公司后来都更名为Docker lnc。Redhat已经在其RHEL 6.5中集中支持Docker; Google也在其PaaS产品中普遍应用。ide
在LXC的基础上Docker进行了进一步的封装, 让用户不须要去关心容器的管理, 使得操做更为简便。 用户操做Docker的容器就像操做一个快速轻量级的虚拟机同样简单。性能
2、为何要用Docker?测试
做为一种新兴的虚拟化方式, Docker跟传统的虚拟化方式相比具备众多的优点。
首先, Docker容器的启动能够在秒级实现, 这相比传统的虚拟机方式要快得多, 其次, Docker对系统资源的利用率很高, 一台主机上能够同时运行数千个Docker容器。
容器除了运行其中应用外, 基本不消耗额外的系统资源, 使得应用的性能很高, 同时系统的开销尽可能小。 传统虚拟机方式运行10个不一样的应用就要起10个虚拟机, 而Docker只需启动10个隔离的应用便可。
spa
对开发和运维(devop)人员来讲,最但愿的就是一次建立或配置,能够在任意地方正常运行。
开发者可使用一个标准的镜像来构建一套开发容器,开发完成以后,运维人员能够直接使用这个容器来部署代码。 Docker 能够快速建立容器,快速迭代应用程序,并让整个过程全程可见,使团队中的其余成员更容易理解应用程序是如何建立和工做的。 Docker 容器很轻很快!容器的启动时间是秒级的,大量地节约开发、测试、部署的时间。
orm
Docker 容器的运行不须要额外的 hypervisor 支持,它是内核级的虚拟化,所以能够实现更高的性能和效率。blog
Docker 容器几乎能够在任意的平台上运行,包括物理机、虚拟机、公有云、私有云、我的电脑、服务器等。 这种兼容性可让用户把一个应用程序从一个平台直接迁移到另一个。资源
使用 Docker,只须要小小的修改,就能够替代以往大量的更新工做。全部的修改都以增量的方式被分发和更新,从而实现自动化而且高效的管理。开发