专访技术达人Patrick Chanezon:如冲浪一般随时代而行,容器创造了截然不同的软件构件模式

本文涉及的产品
容器镜像服务 ACR,镜像仓库100个 不限时长
简介: 在刚刚结束的DockerCon EU 2017上,Docker公司宣布全面支持Kuberentes和Swarm双套编排系统。而10月12日杭州•云栖大会的容器技术专场上,Docker公司的首席开发布道师 Patrick Chanezon则进行了《The Docker Way: Modernize Traditional Applications without Action and Create New Cloud Native Micro-services Application with Naturalness》的主题分享。

在刚刚结束的DockerCon EU 2017上,Docker公司宣布全面支持Kuberentes和Swarm双套编排系统。而10月12日杭州•云栖大会的容器技术专场上,Docker公司的首席开发布道师 Patrick Chanezon则进行了《The Docker Way: Modernize Traditional Applications without Action and Create New Cloud Native Micro-services Application with Naturalness》的主题分享。(容器技术专场视频回放地址)

2013年Docker公司开源的容器项目令技术人们眼前一亮,在GitHub开源项目排行榜中迅速窜升;四年后,容器技术生态不断发展壮大,虽然如何在企业生产环境使用还是一个挑战,但是技术人始终坚信着容器会带来的变革和产生的影响。

在Patrick Chanezon的杭州之行中,我们非常荣幸对他进行了采访。

Patrick

Q1:在加入Docker公司之前,您曾经在先后在Accenture、Netscape、AOL、Sun、Google、Microsoft等很多公司工作过,为什么这样选择您的职业路线?似乎您每一次选择的都是当时的IT热门趋势?

Patrick: 我很喜欢冲浪运动,冲浪时你需要预知下一个浪的到来;在互联网领域中冲浪也是如此。在Accenture的时候,我感受到web的浪潮,于是我加入了NetScape,因为那里可以创建web应用;后来加入Sun,是因为Java越来越普及也很强大,它的应用可以跑在任何地方;再后来,我看到Google的搜索和广告API很好,我就加入了Google先后做了搜索、社交和云计算方面的内容。

当我接触到Docker的时候,我发现这是一个截然不同的软件构建方式,在和Solomon沟通之后,我就决定开启这个巧妙的旅程。

Docker是一项可以让开发者们效率更高的新技术;在我看来,我们不应该过度沉浸于工作细节和具体操作中,而是要站在更高层去抽象化思考,这一点很重要并且令人受益,而Docker恰恰是可以帮助我们做到这一点的一项技术。

Q2:2015年加入Docker时,比起应用软件,您说您感兴趣的是基础设施软件?请问这两种软件有什么不同?在提供企业级服务的过程中,有哪些困难?

Patrick: 在企业场景使用,你需要考虑角色控制,需要考虑安全,需要深入了解企业不同架构的详情。2015年,我们开始做企业版,我们在中国和阿里巴巴一同售卖Docker企业版。

Docker属于基础设施软件的范畴,你需要用一个工具搭建起来一个平台,这个平台是要给开发人员和运维人员共同使用的,为了实现这一点,我们公司进行了相当大量的工作,并提供了Docker for mac和Docker for windows,Docker for mac深度定制并绑定了网络等插件。接下来,还会有更多的功能置入。

那么企业级平台都要考虑哪些呢?从开发角度来看,要考虑是否可以支持代码的快速更迭、测试是否可以简捷高效。由于企业级平台涉及软件的生产化,这就需要考虑整个的软件供应链,即从开发角度到运维角度。企业级基础设施软件需要可将公司整个的软件生产流程自动化。

那么容器的作用是什么呢?首先从开发角度可以将应用镜像打包,并使用签名加签之后放入镜像仓库。而对于运维而言,则涉及到很多不同的架构(大型机、windows系、Linux系等),这些Docker都考虑到了,会搜索后端架构然后进行配套支持,用户需要在这之上加入一个控制层,让团队成员看到需要的信息,然后共同协作,即开发和运维在一起。同时,根据开发组、测试组、运维组的不同工作内容,可以看到不同的镜像。

Q3: 2015年的时候Mesos势头很强,但是现在却没有那么频繁地被提及了,您怎么看待呢?

Patrick: Docker要比Mesos范围更大,Mesos是专门用来做大数据、流处理的编排系统。

Docker是从容器技术开始,然后添加更多的功能以实现DevOps。最重要的是与用户的需求共进,比如我们的一个举措就是将Docker模块化、分散化。

Docker发展的前两年,我们增加的是功能;最近两年,我们是Moby化,我们重构了docker项目,然后把containerd捐赠给CNCF。Moby现在就有很多分散的模块,可以用小的模块化去拼接。这对于使用不同系统(different type of system)的用户而言很重要,除了需要构建云原生架构的,比如IoT可以直接用组件,containerd、LinuxKit去以他们自己的方式集成。期望Moby可以越来越好,可以帮助大家用Moby的工具组件去创造将来他们需要的工具。

Q4: 但是您怎样看待Moby发布之后,社区中的误解和抱怨?
Patrick: Moby面向的是完全不同的群体——系统的构建者,他们可以选用Moby组件按照各自特定的需求去建设不同容器平台。社区之所以会有抱怨,在我看来,可能是因为大家当时都是期望听到都是Docker项目的新功能新特性,也就是Docker CE和Docker EE的相关平台类的内容。

虽然目前Docker大多数的开发者都是使用Docker EE或者Docker CE,可能他们不是很关心Moby项目;但是对于开源项目而言,这是一个重大的变革,我们必须把这个消息在DockerCon上发布。

Q5: Kubernetes最近发展迅速,从Kubernetes身上我们能学到什么?
Patrick: Kubernetes是一个非常优秀的项目,由Google开发并捐赠给了CNCF基金会。值得一提的是Docker也是CNCF的创始成员,Kubernetes实际上是在DockerCon2014发布的。

我们双方已经在很多领域都进行合作:一个例子是containerd,最小化的runtime,这是已经赠给OCI的标准,已经被Kubernetes、Swarm采用;另外一个例子是大家都知道Docker的网络规范是CNM,而Kubernetes则是CNI,但是在刚刚结束的北美Moby Summit,我们演示了一个CNI插件的使用。

在10月17日的丹麦DockerCon上,Docker公司宣布Docker平台可以支持Kubernetes、Swarm双编排系统。Docker认为用户们有选择编排系统的自由,Swarm是我们专门为企业设计的产品,而早期的Kubernetes并不满足企业级别的安全需求(不过现在情况有所好转)。

Q6:Docker公司的特色是什么?你们怎么样能做到与众不同呢?
Patrick: Docker可以适用所有的环境,大型机、windows、linux系列,物理机、虚机、各种编排系统和云等,这是目前唯一一个可以做到这点的容器平台。

Docker的另外一个特点是Modernize Traditional Apps(MTA),除了微服务架构之外,Docker还适用于传统型架构的容器化改造。

Q7:你怎么展望未来呢?二年、五年和十年?
Patrick: 未来两年,我希望Docker在更多的企业中被应用,帮助他们现代化。

未来五年,在云原生和企业架构之外,我希望可以看到Docker累积更多的客户实践用例。尤其是IoT、无人机、机器人。自改造成Moby项目,我们和很多的有特定需求的IoT厂商、开发者进行了密切的沟通,不过现在还尚不能公开的使用案例。

至于未来十年,这对于IT领域,真的很难猜测。

相关实践学习
深入解析Docker容器化技术
Docker是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的Linux机器上,也可以实现虚拟化,容器是完全使用沙箱机制,相互之间不会有任何接口。Docker是世界领先的软件容器平台。开发人员利用Docker可以消除协作编码时“在我的机器上可正常工作”的问题。运维人员利用Docker可以在隔离容器中并行运行和管理应用,获得更好的计算密度。企业利用Docker可以构建敏捷的软件交付管道,以更快的速度、更高的安全性和可靠的信誉为Linux和Windows Server应用发布新功能。 在本套课程中,我们将全面的讲解Docker技术栈,从环境安装到容器、镜像操作以及生产环境如何部署开发的微服务应用。本课程由黑马程序员提供。     相关的阿里云产品:容器服务 ACK 容器服务 Kubernetes 版(简称 ACK)提供高性能可伸缩的容器应用管理能力,支持企业级容器化应用的全生命周期管理。整合阿里云虚拟化、存储、网络和安全能力,打造云端最佳容器化应用运行环境。 了解产品详情: https://www.aliyun.com/product/kubernetes
目录
相关文章
|
3月前
|
存储 容器
46.[HarmonyOS NEXT RelativeContainer案例三] 打造自适应容器:内容驱动的智能尺寸调整技术
在HarmonyOS NEXT的UI开发中,创建能够根据内容自动调整尺寸的容器是实现灵活布局的关键。RelativeContainer结合自适应尺寸设置,可以实现内容驱动的智能尺寸调整,使UI更加灵活且易于维护。本教程将详细讲解如何创建自适应尺寸的RelativeContainer,帮助你掌握这一实用技术。
116 5
|
4月前
|
存储 Kubernetes Serverless
容器技术 20 年:颠覆、重构与重塑软件世界的力量
从 20 世纪硬件虚拟化的笨重,到操作系统虚拟化的轻量探索,容器技术历经蜕变。2013 年 Docker 横空出世,以 “一次构建,到处运行” 的创举打破环境壁垒,开启容器黄金时代。随后,Docker Compose、Kubernetes、Istio 等技术相继涌现,从多容器管理到集群编排,再到微服务治理,不断突破应用部署与运维的边界。如今,容器与 DevOps 深度融合,Serverless 架构异军突起,共同重塑软件开发生态。本文将带你穿越容器技术发展的关键节点,揭秘其如何以颠覆性力量推动云计算与数字化。
324 63
|
1月前
|
安全 持续交付 Docker
Docker:重塑现代软件交付的容器引擎
Docker:重塑现代软件交付的容器引擎
|
1月前
|
Kubernetes Cloud Native 持续交付
Docker:轻量级容器化技术解析
Docker:轻量级容器化技术解析
|
1月前
|
运维 测试技术 Docker
Docker:轻量级容器化技术革命
Docker:轻量级容器化技术革命
|
9月前
|
Kubernetes Cloud Native 微服务
探索云原生技术:容器化与微服务架构的融合之旅
本文将带领读者深入了解云原生技术的核心概念,特别是容器化和微服务架构如何相辅相成,共同构建现代软件系统。我们将通过实际代码示例,探讨如何在云平台上部署和管理微服务,以及如何使用容器编排工具来自动化这一过程。文章旨在为开发者和技术决策者提供实用的指导,帮助他们在云原生时代中更好地设计、部署和维护应用。
|
5月前
|
弹性计算 Java Maven
从代码到容器:Cloud Native Buildpacks技术解析
Cloud Native Buildpacks(CNB)是一种标准化、云原生的容器镜像构建系统,旨在消除手动编写Dockerfile,提供可重复、安全且高效的构建流程。它通过分层策略生成符合OCI标准的镜像,实现应用与基础镜像解耦,并自动化依赖管理和更新。阿里云应用管理支持通过CNB技术一键部署应用至ECS,简化构建和运行流程。
|
6月前
|
存储 虚拟化 Docker
|
6月前
|
开发工具 虚拟化 git
自学软硬件第755 docker容器虚拟化技术youtube视频下载工具
docker容器虚拟化技术有什么用?怎么使用?TubeTube 项目使用youtube视频下载工具
|
9月前
|
供应链 安全 Cloud Native
阿里云容器服务助力企业构建云原生软件供应链安全
本文基于2024云栖大会演讲,探讨了软件供应链攻击的快速增长趋势及对企业安全的挑战。文中介绍了如何利用阿里云容器服务ACK、ACR和ASM构建云原生软件供应链安全,涵盖容器镜像的可信生产、管理和分发,以及服务网格ASM实现应用无感的零信任安全,确保企业在软件开发和部署过程中的安全性。