2010年,几个大胡子年轻人在旧金山成立了一家做 PaaS 平台的公司,起名为「dotCloud」,这个名字让我想起了微软的「DotNet」。

dotCloud 主要是基于 PaaS 平台为开发者或开发商提供技术服务。什么是 PaaS 呢?PaaS 的全称是 Platform as a Service,也就是平台即服务,这个概念在2010年热的一塌糊涂,直到现在也没凉下来。举个例子来说,传统的软件产品开发一般是这样的:

1、确定产品定位和需求,确定首次迭代的范围。
2、制作界面原型。
3、技术选型,然后根据技术选型为每个开发者搭建开发环境和技术栈,例如 Java 环境、Python 环境、Ruby 环境、数据库、中间件等等。
4、构建基础技术框架和服务,包括日志、存储、消息、缓存、搜索、数据源、集群扩展等等。
5、模拟用户容量,构建测试环境。
6、开始编写真正的业务代码,实现产品功能。
7、迭代开发/测试,生生不息,周而复始,直到头发掉光为止……

如 果采用完善的 PaaS 平台,可以直接忽略3、4、5三个步骤。无论你选择哪个技术栈,PaaS 都会为你提供相关的配套设置,包括语言环境、运行环境、存储和各种基础服务。dotCloud 不仅支持诸如 PHP、MySql 等传统技术框架,还包括 Node.js、MongoDB 等新兴技术。基于 dotCloud 提供的开发工具和技术框架,你可以直接使用 dotCloud 的 SDK 编写代码和构建业务服务,并在联网的时候把这些代码推送到云端,实现自动部署和测试。

dotCloud 把需要花费大量时间的手工工作和重复劳动抽象成组件和服务,并放到了云端,另外,它还提供了各种监控、告警和控制功能,方便开发者管理和监控自己的产品。 dotCloud 最初运行在 Amazon 的 EC2 上,不过由于 dotClout 高度的抽象层次,理论上 dotCloud 可以运行在各种各样的云服务上面(我猜这就是 Docker 的功劳)。

一切看起来都是那么的美好,如果后来的事情按照这个设想进行下去的话,软件厂商和程序员都会松好几口气,那样我们的头发还能和「普通地铁站」里的人一样,倔强的飘在风里。

遗憾的是,我们抵达的是「中关村地铁站」!

PaaS 并没有这样一直春暖花开下去,事实上给开发者或程序猿做东西一直是件非常危险的事情,程序猿是一种很奇怪的动物,虽然他们常常分不清楚女友的发型和衣服款 式,但是对开发环境和开发工具却非常敏感并要求极高,稍不注意就会伤害到他们脆弱的心。所谓文人相轻,程序猿也不例外,对自己人常常是下死手的。所 以,PaaS 的概念虽好,但是由于认知、理念和技术的局限性,市场的接受度并不高,市场的规模也不够大。

除 此之外,还有巨头不断进场搅局,IBM 的蓝云,微软的 Azure,Amazon 的 EC2,Google 的 GAE,VMware 的 Cloud Foundry 等等,可谓强敌环伺,而且强敌都不差钱,想玩多久就玩多久,想玩多大玩多大。在这种情况下,虽然 dotCloud 在2011年初拿到了1000万美元的融资,但依然举步维艰。

再也不能这样下去了!dotCloud 的创始人 Solomon Hykes 把大伙召集到一起,说,咱们过的不舒服,也不能让别人痛快了,干脆把我们的核心引擎开源扔到市面上看看,如何?大家面面相觑,最后把拳头砸到桌面上,就这么办。

山重水复疑无路,柳暗花明又一村!

这 个基于 Linux Container 技术的核心管理引擎一经开源立刻得到了「业界」的热烈吹捧,首当其冲的当然是程序猿们。看到好的开源产品,这帮平时静若处子的货色就像猴子看到卖桃的一 样,一窝蜂冲上去,边吃边说好吃。这个容器管理引擎大大降低了容器技术的使用门槛,轻量级,可移植,虚拟化,语言无关,写了程序扔上去做成镜像可以随处部 署和运行,开发、测试和生产环境彻底统一了,还能进行资源管控和虚拟化。程序员们流着口水惊呼,太方便了,太方便了。

业界几个大佬也没闲着,看看程序员们欢喜雀跃,再看看自己平台上笨重的 PaaS,纷纷表示要接入或支持这个引擎。连最传统的过气带头大哥微软都信誓旦旦的说,要以Windows 原生的方式运行这个引擎。

这个引擎的名字叫做 Docker,以 Go 语言写成。

这 个结果是 dotCloud 公司的几个创始人万万没想到的,他们本来是按照穷小子模式来培育 Docker 的,没成想直接蹦出一个婀娜多姿的大美女,明眸善睐,顾盼生姿,不仅把各类程序猿迷的神魂颠倒,而且旁边几个高楼大厦里的土豪也时不时过来搭讪聊天。哥儿 几个坐不住了,开始合计。

咱本来是想捡点芝麻,结果怀里掉了个大西瓜,怎么办?
目光坚定,勇往直前,为了理想继续捡芝麻!
你傻呀,别和杭州那个产品经理学,这么好的机会砸脑门上,咱就甭躲了,专心培养西瓜吧。

从 此以后,他们开始专心研发 Docker 产品和维护相关社区,过上了幸福而快乐的生活。2013年10月 dotCloud 公司更名为 Docker 股份有限公司,2014年8月 Docker 宣布把平台即服务的业务「dotCloud」出售给位于德国柏林的平台即服务提供商「cloudControl」,dotCloud 的历史告一段落。同年8月,Docker 内部员工 James Turnbull 发布了面向开发者、运维和系统管理员的 Docker 电子书《The Docker Book》。

过 去12个月,Docker 迅速成长为云计算相关领域最受欢迎的开源项目,Amazon、Google、IBM、Microsoft、Red Hat 和 VMware 分别表示已经支持 Docker 技术或准备支持。据说,有 Linux 的地方,就可以运行 Docker。看情形 Windows 也快了。

有意栽花花不开,无心插柳柳成荫!

Docker 这个技术到底能解决什么问题呢?预知后事如何,且听下回分解。

今日题图来自杭州辣个项目经理的摄影作品,模特是他的大美女夫人。

原文:http://www.oschina.net/news/57838/docker-dotcloud

相关链接

Docker 传奇之 dotCloud的更多相关文章

  1. Docker的官网在线--中文教程

    1.官网界面:https://www.docker.com/tryit/ In this 10-minute tutorial, see how Docker works first-hand: Yo ...

  2. Docker(一):Docker入门教程

    如今Docker的使用已经非常普遍,特别在一线互联网公司.使用Docker技术可以帮助企业快速水平扩展服务,从而到达弹性部署业务的能力.在云服务概念兴起之后,Docker的使用场景和范围进一步发展,如 ...

  3. 【docker简易笔记】docker基础信息的分享

    docker 使用的频率越来越高,所以在后续的一些博客中会分享一些docker的安装和使用. 一.docker介绍   "Docker 最初是 dotCloud 公司创始人 Solomon ...

  4. 两小时入门Docker

    引入 Docker是什么? Docker 最初是 dotCloud 公司创始人 Solomon Hykes 在法国期间发起的一个公司内部项目,于 2013 年 3 月以 Apache 2.0 授权协议 ...

  5. linux ---docker篇

    Docker docker是什么? docker最初是dotCloud公司创始人Solomom Hykes在法国期间发起的一个公司内部项目,它是基于dotCloud公司多年云服务技术的一次革新,并在2 ...

  6. Docker初始

    如今Docker的使用已经非常普遍,特别在一线互联网公司.使用Docker技术可以帮助企业快速水平扩展服务,从而到达弹性部署业务的能力.在云服务概念兴起之后,Docker的使用场景和范围进一步发展,如 ...

  7. docker整理

    Docker的简单介绍 docker是什么 Docker 最初是 dotCloud 公司创始人 Solomon Hykes 在法国期间发起的一个公司内部项目,于 2013 年 3 月以 Apache ...

  8. 初识docker

    什么是docker Docker 最初是 dotCloud 公司创始人 Solomon Hykes 在法国期间发起的一个公司内部项目,于 2013 年 3 月以 Apache 2.0 授权协议开源,主 ...

  9. 应用篇 = Docker下的Redis

    一.工具介绍 1.1 什么是Docker? Docker 最初是 dotCloud 公司创始人 Solomon Hykes 在法国期间发起的一个公司内部项目.使用 Google 公司推出的 Go 语言 ...

随机推荐

  1. 2018-11-3& maven

    https://www.cnblogs.com/clsn/p/7944116.html#auto_id_10 http://www.runoob.com/maven/maven-creating-pr ...

  2. centos6.5安装maridb5.5.51

    1.先创建关于mariadb的yum源 vi /etc/yum.repos.d/MariaDB.repo [mariadb] name = MariaDB baseurl = http://yum.m ...

  3. eclipse中 EAR Libraries 是什么?

    eclipse中 EAR Libraries 是 开发EJB工程所需的库包. 由于新建web工程时,eclipse并不能智能化的判断是否该项目以后会用到ejb, 所以为了全面考虑 就已经帮用户导入了E ...

  4. jenkins之参数化构建

    事件背景: 今天一早接到一个需求,说要jenkins持续集成,输入自定义URL,然后完成回归测试,当时有点蒙,不知道如何下手,听群里的大神思路后豁然开朗,就记录了下 一.先安装插件 插件: [Buil ...

  5. #Plugin 中国省市选择插件

    中国省市选择插件  ChineseCities 1.原生JS,不依赖jquery,zepto 2.前端学习交流群:814798690 源码查看 点击下载 https://github.com/chao ...

  6. 如何简单区分Web前后端与MVC

    MVC是开发所有软件所必须涉及的基本几个划分 M主要负责数据与模型,V主要负责显示C主要负责交互与业务所以不管是前端还是后端,都是有MVC的.MVC是一个对于软件简单的抽象,不管是M还是V,还是C都是 ...

  7. js 相对路径转为绝对路径

    有时为了唯一标识网址或其它开发需要,我们需要将相对的网址转换为绝对的网址.当然前人实现方式已经不少,但或多或少的存在缺点或兼容问题.下面我将总结已有实现并给出相对完美的实现. 常规实现:地址转换 因该 ...

  8. CSS 浮动和清除

    CSS 浮动和清除浮动 在写页面布局的过程中,浮动是大家经常用的属性.在好多的排版布局中都是用的的浮动比如说下面这些地方都是应用到了浮动. 在我学习浮动的时候可是熬坏了脑筋,在这里我分享一下我对浮动这 ...

  9. Orchard学习 02、orchard 路由

    Orchard对mvc路由重新做了包装,重写了asp.net的路由模块 一.路由模块类图 1.路由 Descriptor RouteDescriptor是对常规mvc路由的包装类,它的Route属性就 ...

  10. Win7建立FTP站点

    Win7建立FTP站点 1.到控制面板---程序---打开或关闭windows功能,列表内找到 Internet信息服务(展开)---选中FTP的三个项: 2.到控制面板---系统和安全---管理工具 ...