你好,游客 登录 注册 发布搜索
背景:
阅读新闻

Docker迈入云+端时代

[日期:2014-06-14] 来源:CSDN  作者: [字体: ]

  Docker简介和快速发展

  开源项目Docker于2013年3月启动,是由PaaS 提供商 dotCloud 开源的一个基于 LXC 的高级容器引擎,源代码托管在 Github 上,基于谷歌发布的开源编程语言 Go。Docker让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到主流的 Linux 机器上。容器是完全使用沙箱机制,相互之间不会有任何接口(类似iPhone 的 app),性能开销很低,可以很容易地在机器和数据中心中运行。它出现的意义可以与集装箱的发明相比,集装箱将货运目标标准化,Docker 将应用程序标准化。Docker 诞生之前,程序员在服务器端部署应用程序的步骤如下:安装→配置→运行。与传统部署模式不同,运用 Docker,程序员在服务器端部署应用程序的步骤如下:复制→运行。

  

 

  在短短一年多时间内,Docker已经发展为GitHub上的发展最快的开源组织之一,目前总共有200多万次下载, 460多个开发人员贡献了超过8000次代码提交,有14000多个利用Docker引擎打包的应用。Docker背后的商业公司也发展迅速:DotCloud公司2013年10月改名为Docker Inc,转型专注于Docker引擎和Docker生态系统;2014年1月获得1500万美元高额B轮融资,由著名的投资公司 Greylock Partners 领投,包括 Insight Venture Partners 参与以及原有投资者 Benchmark Capital 和 Trinity Ventures跟投,参与此轮投资的还有 Yahoo 的联合创始人杨致远(Jerry Yang)。Docker深受互联网巨头发PaaS创业公司青睐,国内的百度在大规模实践Docker,Google 的 Compute Engine 也支持 docker 在其之上运行,Redhat也积极地在RHEL中集成对Docker的支持。

  Docker 1.0发布

  Docker 1.0的发布和谷歌、Rackspace等的实践标志着Docker向正式大规模生产系统中的应用方面迈出了艰巨的一步。Docker的官方博客谈到:“当许多机构忽视掉我们“不要在生产环境中运行”的警告愉快地使用Docker时,其他人则在实际部署生产环境前一直等待Docker产品成熟度达到一定水平,1.0 版本的发布表明在质量、功能完整、向后兼容和 API 稳定性方面已达到企业级标准;另外,我们为实际生产提供了一套全面的解决方案,包括完善的文档、培训项目、专业服务、以及企业级支持。”

  Docker的开放平台战略,迈入云+端时代

  除了发布正式的1.0版本,Docker公司也正式宣布了Docker引擎+Docker Hub的开放平台计划,迈入云(Docker Hub云应用商店和分发平台)+端(将应用发布到数据中心、公有云等运行Docker引擎的服务器平台上)。这一里程碑意味着 Docker 自身已经转变为一个分发应用的开放平台,它由 Docker 引擎、容器运行时、打包工具,以及 Docker Hub 组成。

  

 

  Docker宣布的开放平台包括如下几部分:

  PLATFORM= Docker Engine + Docker Hub +APIs + Ecosystem

  Docker Engine可以自动化地部署应用到可移植的的容器中,这些容器独立于硬件、语言、框架、打包系统。一个标准的Docker容器包含一个软件组件及其所有的依赖 ——二进制文件,库,配置文件,脚本等等。Docker扩展了LXC,使用高层的API,提供轻量虚拟化解决方案来实现进程间隔离。可以运行在任何支持 cgroups跟AUFS 的 64位Linux内核上。Docker容器可以封装任何有效负载,几乎可以在任何服务器之间进行一致性运行。换句话说,开发者构建的应用只需一次构建即可多平台运行。运营人员只需配置他们的服务,即可运行所有的应用。

  

 

  Docker Hub

  Docker Hub提供API和云服务来发布基于Docker的应用程序。

  

 

  下图演示了Docker应用程序的生命周期。在本地基于Docker引擎打包应用程序,然后用DockerHub云服务将程序(集装箱)放到DockerHub,希望运行此应用的平台比如GoogleAppEngine再去下载和运行。

  

 

  Docker应用商店(Official Repositories)

  应用商店是对之前DockerHub Registry的商业化,目前已经有14000多个基于Docker的应用程序package,包含最流行的13个应用-CentOS, MongoDB, MySQL, Nginx, Redis, Ubuntu, and WordPress 等等。应用商店将开放给合作伙伴共建生态体系,里面包含免费的应用和收费的应用。

  

 

  Docker 的蓬勃发展和新战略将对于服务器端(云)应用部署带来深远影响

  在6月10号的一个重要会议上,谷歌对Docker给予了相当大支持。在该公司看来,Docker是一个足以改变人们创建软件方式的东西,它能让任何程序开发人员更轻松地、即刻地体会到海量计算性能的优势。Google 去年 12 月 2 日宣布,Google Cloud Platform 开始支持 Docker,Google Compute Engine 此前只支持两种 Linux 部署方案 Debian、Centos。Google 为全球用户提供互联网服务,需要在分布在全球各地的服务器上部署相关应用程序。传统的部署模式下,Google 工程师需要在每一台服务器上进行相当复杂的操作才能够完成部署。如果使用 Docker,工程师在全球各地服务器上部署应用的过程将变得非常简单,只需要将应用打包、复制、传送、粘贴即可完成部署。

  谷歌著名的工程师,前加利福尼亚大学伯克利分校教授、分布式系统专家,埃里克·布鲁尔(Eric Brewer)表示:“谷歌和Docker是能天然融合的。我们对应用程序未来该如何开发有着共同的认识。”布鲁尔称,Docker复制了谷歌在其数据中心里已执行多年的一些东西,即通过一种方法让成百上千的电脑如一台巨型电脑般运转。布鲁尔相信,这种架构代表了网络软件开发的未来。来自网易科技的报道称,“集装箱化思维”被运用在软件“运输”上,Docker可以看作是用代码编写出来的国际集装箱,它可以把任何应用及相关依赖项打包成一个轻量、可移植、自包涵式的容器。

收藏 推荐 打印 | 录入:574107552 | 阅读:
相关新闻       Docker PaaS GCE 
本文评论   查看全部评论 (0)
表情: 表情 姓名: 字数
点评:
       
评论声明
  • 尊重网上道德,遵守中华人民共和国的各项有关法律法规
  • 承担一切因您的行为而直接或间接导致的民事或刑事法律责任
  • 本站管理人员有权保留或删除其管辖留言中的任意内容
  • 本站有权在网站内转载或引用您的评论
  • 参与本评论即表明您已经阅读并接受上述条款