专访Docker中文社区创始人马全一: Docker正走在成为领域标准的路上 – 51CTO.COM

时间:14-12-26 栏目:云计算技术 作者:爱说云网 评论:0 点击: 2,563 次

凭借其方便的可移植性和开源 Linux 容器引擎,Docker在云计算领域的人气飙升。其实使用 Linux 容器技术并不是什么新鲜事,国内的各大互联网公司内部都有基于 Linux 容器引擎的平台在为业务部门提供服务。一个开源的项目能否在商业上取得成功,很大程度上依赖三件事 —— 成功的 User Case, 活跃的开放社区和一个好故事。

最近 CoreOS 开发了自己的 Linux 容器项目 Rocket,当Docker遇到Rocket,这两款 App Container 的产品到底谁能胜出?51CTO记者专访Docker中文社区 & docker.cn 创始人之一马全一老师,看看他预期中的Docker明天的故事,应该会落下怎样的一笔。


嘉宾简介:

马全一, Docker 中文社区创始人之一,致力于在国内推广 Docker 开源技术。此前关注Python、NodeJS,也曾从事过 SAP的 FI/CO顾问等工作。在负责游戏后端平台研发的过程中了解到Docker技术后开始潜心钻研并从事 Docker 社区的活动。

Docker中文社区创办于2013年年底,主要提供 Docker 技术文章的中文翻译, DockerCon 视频字幕的制作,并在国内的主要城市组织 Docker Meetup 活动,方便国内用户了解学习Docker的相关技术和讨论交流。

以下为51CTO记者对马全一老师的专访录音整理。

请简单介绍一下您个人经历,什么时候开始想到创办Docker中文社区的?

马全一:虽然在大学学习的是生物专业,但是毕业后一直从事研发的工作。先后做Delphi、Python、Java 和 NodeJS的开发,也从是过 SAP FI/CO 和 ITSM 的顾问。创办 Docker 中文社区之前,在一家游戏公司负责游戏后端服务的研发团队,当时我们在找一个合适用于 mBaaS 的 PaaS云平台的时候发现了Docker,我觉得 Docker 能比 PaaS 平台做更多的事情。从 2013 年底开始,我们就专注于做 Docker 中文社区。从目前 Docker 的发展来看,我们的选择正确的, Docker 是 2013 年到 2014 年最火的开源项目,在云计算领域掀起了 Container 技术的热潮。

是什么使Docker如此吸引您,愿意专心钻研Docker这项技术?

马全一:我觉得Docker可以解决开发者和运维人员非常头疼的事情,就是应用程序的版本管理。做软件开发的时候,一个产品要上生产环境之前,需要从软件的某个版本的源代码 Build 构建一个应用程序部署到生产环境, 一些配置文件的改动需要通过 DevOps 的工具处理。当版本升级时必须重复上面的过程, Docker 通过使用 Linux 容器和 Union FileSystem 带来了新的解决方案,Docker 公司把它称为 ContainerOps。

我个人觉得这是一个新的机会,ContainerOps未来可能是一个革命性的理念。所以才专心研究 Docker 技术,做 Docker 开源技术的推广。

Docker中文社区是什么时候成立的?主要致力于哪方面的工作?

马全一:是在 2014 年二月份开始创办 Docker 中文社区,社区主要是做 Docker开源技术的推广,而且针对 Docker Hub 的闭源产品,我们也有写一个开源的替代产品。我们的目标很简单,就是让开发者都了解并且去使用 Docker 。我们觉得一个这样有革命性的产品,让大家都去接受和使用它肯定会有一个过程的。开始我们在社区中组织整理翻译很多英文的技术文章,随后组织一些meetup的活动,特别是在北京、上海、深圳这样开发者聚集的城市。开始时了解 Docker 的人很少,Meetup 的活动让更多人知道 Docker 。深圳的 Meetup 活动在当地 OSChina 的协助下举办,有三百余人到场参与,会场的通道都站满了热情的开发者。现在我们在社区里组织翻译一了业内第一本 Docker 技术书籍, 由 James Turnbull 编写的 《The Docker Book》。 目前中文译版已经上市 《第一本 Docker 书》,在各大电商网站都可以找到。

我们做Docker 技术的研发和社区,主要是看重 Docker 对 DevOps 带来的巨大改变,看重的是 ContainerOps 带来的巨大机会。对于 Container 容器在云计算领域的巨大机会,我认为云计算的厂商都会推出支持 Docker 或者 CoreOS 的方案。但是基于 Container 的 ContainerOps 平台还是空缺,这就是我们要在 2015 年要致力做的事情。

就您了解到的状况来看,Docker目前的应用状况是怎么样的?

马全一:我觉得Docker在国内的互联网公司已经有一些开始尝试了,但还没有大规模的使用。因为 Docker 出来的时间也不长,大家可能知道Docker,看新闻的时候会关注一下,只是知道它比较火,但具体是什么东西好多概念都混在一起。实际对于整体国内的开发者来讲,Docker 其实还是比较陌生的。

对于 Docker 技术我们也有很多意想不到的地方。 譬如 Docker 和微软深度合作,这个是大家谁也没有想到的,我在这个新闻之后困惑了很长时间。Windows 的 Container方案布局已经在 Azure 云计算中研发了一段时间,现在和 Docker 结合在一起的知,对云计算领域的还是有一定影响的。

Docker其实不是新技术,您觉得是什么原因,让它取得这么大的成功?

马全一:我觉得主要有两个原因。

第一个原因是云计算的时代到来。从整个趋势来讲,云计算发展到这个程度,原来大家对虚拟机的需求比较明确,现在有一些应用的场景,传统的全虚拟化方案并不合适,因为它比较厚重,这时候大家就会想起来一直在用的轻量级虚拟化的解决方案。

Docker 未来可能会成为软件分发的事实标准,成为系统在不同云计算平台之间迁移的最佳方案,这可能为云计算的市场带来一些冲击。

第二是 Docker 的 Container 引擎选择了使用 Union FileSystem的文件系统,让原来的很多文件,变成一层一层的结构。 在改动的时候,只需要把修改的部分增量在文件系统上就可以。LXC 最早的 Linux Container 解决方案,当然现在有了和它类似的 LXD 。它们和 Docker 不一样,Docker 是一种 Application Container 的实现,使用了精简的文件系统为 Application 的运行提供依赖,所以它更适合分发 Application。也许某一天连 Mobile 的 Application 也可以采用这种方式分发。

Docker不只适用于 Linux,在别的操作系统里,它的性能会有什么差异吗?

马全一:这个是没办法比较性能差异的。我们可以把Docker看作一个统一的接口,核心是一个 Container Engine 。 那 Windows 的容器是实现了 Docker 的接口定义,所以没有办法比较这之间性能的差异。

Docker出来了以后,在开放应用的时候,是不是不用再考虑多用户了?

马全一:使用 Docker的时候是运行了 Container 内的程序,至于这个程序要服务一个人还是几个人,是由程序的性质来决定,跟Docker没有关系。

Docker虽然有很多优势,但毕竟出来的时间不长,肯定还有不成熟的地方,像您刚才说一个是安全、一个是网络,这可能是它比较明显的两个短板。您觉得未来在解决这个问题的时候,有什么办法?

马全一:现在很多大公司都对 Docker 进行支持,和 Docker 公司进行了合作。其实从Docker是不是安全,还是要看在什么场景下使用。如果在公司内部,那其实不用很担心这个问题。 但是 Docker 已经受到越来越多的关注,如果是做为 Container 的公共服务,其实问题还是比较大的。安全还是相对的,但是各大厂商还是在努力的解决这个问题。

Docker 运行起来是很多层,Selinux 可以对每一层做了一个安全的控制,可以实现一个较安全的运行期环境, 但是因为Selinux本身比较复杂,能做好这个控制的人不多,至少是一个解决 Docker 安全问题的办法。

谷歌出了Kubernetes 的项目,它是管理大规模 Container 的解决方案,后面肯定还会有更多类似的产品出现。现在 Waeve 这样的项目就是提供解决网络问题,也拿到了融资。

SDN和Docker这两个结合在一起,会对Docker有什么帮助吗?

马全一:SDN跟Docker结合在一起的时候,我觉得可能会对Docker在网络上的问题有一些帮助。SDN也不能完全解决问题,有些还要靠 Docker 自己,要看它未来的版本在网络方面如何改进。

对CoreOS和Docker的分手这件事您怎么看?这对Docker和行业未来的发展会带来什么影响?

马全一:CoreOS 对 Docker 的发展是做出了巨大贡献,按照 CoreOS 官方的说法,他们认为 Docker有一些无法避免的缺陷,所以 CoreOS 决定自己推出 Container Runtime。 Rocket 的实现基础和 Docker 一样的,都是基于 Linux 的 Namespace 和 Cgroup 特性。

CoreOS 的 Rocket 出来以后,对Docker 的发展都会是一个促进,代码会更稳定一些,功能会更加完善。目前 Docker 的代码改动比较快,API 的版本升级比较频繁。当我依赖于 Docker 的代码或者 API 开发的时候就比较痛苦。但是它作为一个快速成长的项目,这个过程是必然的。那现在有产品和 Docker 竞争了,这是一个相互促进的事情。

而且我觉得以后很多类似 Rocket 的产品出现和 Docker 竞争。像OpenStack 一样,国内有很多公司都有自己的OpenStack版本,做到最后跟主干分支分的太远,新的特性加不进来,旧的东西又在不停维护。其实我觉得 Docker 和 OpenStack 的代码量来看,Docker相对来说还是比较简单的。

您对未来Docker应用的展望怎样?

马全一:现在我们看到 Docker 商业的产品是 Docker Hub,Docker Hub以前叫Dcoker Index,在 Docker 1.0 的时候改为 Docker Hub,我觉得 Docker 想做这个领域的Github。如果 Docker 成为应用分发的事实标准,成为新的版本管理方案时,它可能成为变成下一代的Github,这可能是一个不一样的故事。

相关文章

分类垃圾贴上二维码 生成积分换取日用品...
views 1791
市民只要给垃圾进行分类、并贴上相应的二维码标签,就可以获得积分并兑换生活用品。这就是我市在锦江区开展的垃圾分类试点,不仅大幅提高了垃圾回收率,还让市民有了垃圾分类的意识。据市城管局相关负责人介绍,今年我市将在中心城区和二圈层城区小区中各开展1万户生活垃圾分类试点;同时,启动中心城区生活垃圾分类转运示...
云计算的主要服务形式和典型应用
views 4034
  云计算还处于萌芽阶段,有庞杂的各类厂商在开发不同的云计算服务。云计算的表现形式多种多样,简单的云计算在人们日常网络应用中随处可见,比如腾讯QQ空间提供的在线制作Flash图片,Google的搜索服务,Google Doc, Google Apps等。目前,云计算的主要服务形式有:SaaS(Sof...
八大云管理工具如何取舍?
views 1797
云管理是很容易发生问题的,尤其是它的复杂性。但是VMware、戴尔以及其他的公司所提供的管理工具能够让你的云一帆风顺地运行。 云管理是复杂的,这一点往往会阻碍云的实施,有时候即便是具有成本效益的云服务亦是如此。从成本管理实用程序到系统运行,各种各样的云管理工具可以帮助管理人员在实际工作中减少一些困扰...
分布式计算、并行计算及集群、网格、云计算的区别...
views 1675
并行计算:并行计算是相对于串行计算来说的。可分为时间上的并行和空间上的并行。 时间上的并行就是指流水线技术,而空间上的并行则是指用多个处理器并发的执行计算。例如基于CUDA编程。并行计算的目的就是提供单处理器无法提供的性能(处理器能力或存储器),使用多处理器求解单个问题。 总结:并行的主体 -- 处...
不要让您的云应用程序数据被破坏
views 2107
Optim Data Privacy 包含一组数据隐私功能提供程序,它们能够屏蔽或替换各种信息类型,比如信用卡号、日期和一些国家的全国性 ID。这些数据隐私功能提供程序是跨平台和跨环境的,被实现为一系列共享库,而且可由所有支持 C 语言调用约定的应用程序调用。 SQL Database (SQLD...
云计算下的“技术雨”
views 1649
随着互联网络的深入,云计算对现有的IT技术产生了深远的影响,本文着重分析两个方面的变化。 一. 云计算对于软件产业的影响 1. 软件开发模式发生革命性的变化 1) 开发模式由单机版向面向云计算转变。单机版的软件所使用的资源,是基于PC机的物理资源(如PC机的内存和硬盘);在云计算,云计算技术时代,这...
为什么社交网络中数据翻页技术复杂-技术方案...
views 1827
最近讨论的一个传统的问题,问题本身比较简单,针对key-list类型的数据,如何优化方案做到性能与成本的tradeoff。Key-list 在社交产品及面向用户的产品中非常普遍,如一个用户的好友关系 {“uid”:{1,2,3,4,5}},表示某个uid有1,2,3,4,5好友;一条微博下面的评论i...
云计算的概念
views 3735
云计算(Cloud Computing)是由分布式计算(Distributed Computing)、并行处理(Parallel Computing)、网格计算(Grid Computing)发展来的,是一种新兴的商业计算模型。目前,对于云计算的认识在不断的发展变化,云计算没仍没有普遍一致的定义。 ...

专访Docker中文社区创始人马全一: Docker正走在成为领域标准的路上 – 51CTO.COM:等您坐沙发呢!

发表评论


读者排行