首先,我们了解一下Docker产生的历史背景和当前发展情况,通过和一些熟悉的事物作比较,让大家对Docker有一个初步认识和了解。
Docker是dotCloud公司开源的一款产品。dotCloud公司是2010年新成立的一家公司,主要基于PaaS(Platform as a Service,平台及服务)平台为开发者提供服务。在PaaS平台下,所有的服务环境已经预先配置好了,开发者只需要选择服务类型、上传代码就可以对外服务,不需要花费大量的时间搭建服务和配置环境。dotCloud的PaaS平台已经做得足够好了,它支持几乎所有主流的Web编程语言和数据库,可以让开发者随心所欲地选择自己需要的编程语言、数据库和编程框架,而且它的设置非常简单,每次编码后只需要运行一次命令就可以把整个网站部署上去;并且利用多层次平台的概念,理论上,它的应用可以在各种类型的云服务商。两三年下来,虽然DotCloud也在业界活的不错的口碑,但由于整个PaaS市场还处于培育阶段,dotCloud公司表现得不温不火,没有出现爆发式的增长。
2013年,dotCloud的CEO Solomon Hykes决定把dotCloud内部使用的Container容器技术单独拿出来开源,2013年3月发布Docker的V0.1版本,并且基本保持每月一个版本的迭代速度,到了8月,Docker已经足够火爆,并广受好评,各种各样的技术论坛和技术峰会都开始热烈讨论与推荐Docker,这时Docker才只发布到V0.6版本。
随着Docker的流程,越来越多的优秀开发者加入Docker社区参加开发。这里值得一提的是,Docker是基于Linux3.8以上内核,在aufs分层文件系统下构建的,主要运行在Ubuntu的系统下。REHL/Centos当时最新版6系列还是基于Linux2.6.23内核,无法运行Docker。REHL/Centos尽快支持Docker,RedHat公司的工程师亲自出马,加班加点为Docker贡献代码,新增对devicemapper的支持来时间文件系统分层,终于顺利地让Docker在REHL/Centos运行起来。
随着Docker在业界的知名度越来越高,到了2013年10月,dotCloud公司索性更名为Docker股份有限公司,工作的重心也从PaaS平台业务转向全国全面围绕Docker来开发,到了2014年1月,Docker公司宣布完成15000万美元的融资,雅虎联合创始人杨致远也参与跟投。
虽然Docker迟迟没有发布1.0版本,但好多公司已纷纷把Docker应用到生产环境,其中美国奢侈品电商Gilt的CTO说:“使用Docker后,突然发现,传统方式中的各种问题都消失了,我们接下来要考虑如何进一步提高软件生产效率,让软件开发更加安全和创新。这种转变太不可思议了”。
千呼万唤,到了2014年6月9日,Docker终于发布了V1.0版本,并举办了DockerCon2014大会,大会上来自goole、ibm、Redhat、rackspace等公司的核心人物均发表了主题演讲,纷纷表示支持并加入Docker的阵营。Docker的CTO Solomon Hykes充满雄心壮志的说:“我们能把互联网升级到下一代”,Google的基础架构部副总裁Eric Brewer也附和道:“容器技术曾是Google的基础,我们和Docke联手,把容器技术打造为所有云应用的基石”。
Google自2004年就开始使用容器技术,目前他们每周要启动超过20亿个容器,每秒钟新启动的容器都超过3000个,在容器技术方面有大量的积累。曾相继开源了Cgroup和Imctfy先进之处融入Docker中,还把自己的容器管理系统(kubernetes)也开源出来。
2014年8月,不缺钱的Docker再次融资,融资超过4千万美元,估值达到4亿美元。所有的云计算大公司,如Azure、Google和亚马逊等都在支持Docker技术,这实际上也让Docker成为云计算领域的一大重要组成部分。
2014年10月15日,Azure副总裁Jason Zander宣布微软与Docker的合作伙伴关系;2014年11月5日,Google发布支持Docker的产品DockerGoogle Container Engine;
2014年11月13日,Amazon发布支持Docker的产品AWS Container Service。至此,几个重要的云计算大公司都已经支持Docker技术,这不仅让Docker成为云计算领域的一个重要级成员,也让Docker成为云应用部署的事实上的标准。
2014年12月,Docker发布了Docker集群管理工具Machine和Swarm,标志着Docker开始突破一个标准的容器框架,打造属于Docker自己的集群平台和生态圈。
2015年4月,Docker公司宣布完成了9500万美元的D轮融资。
2015年10月,Docker收购Tutum,Tutum本身已经实现对亚马逊网络服务(AWS)、Digital Ocean、微软的Azure等主流云服务商的良好支持。
2016年1月,Docker官方计划全面支持自身的Apline Linux,使用它构建的基础镜像最小只有5M。
截止2016年3月,Docker在Gitlab上收获29962个关注、8347个copy、在Gitla所有项目中排第7位,在云平台管理领域排名第一,远远超过OpenStack项目的1316个关注、768个Copy。