NVIDIA 初创加速计划,免费加速您的创业启动 了解详情
写点什么

DockerCon 2016 会议:发布内容的总结及主要收获

  • 2016-07-03
  • 本文字数:2821 字

    阅读完需:约 9 分钟

在美国西雅图举办的 DockerCon 2016 会议发布了最新的 Docker 引擎 1.12 测试版 。该测试版中通过集成 Docker Swarm 特性而提供了容器编排工具。此外,会议的其它发布内容还包括:公开发布了运行于Mac 和Windows 系统上的Docker ;开放了应用于AWS 和Azure 平台的Docker 封闭测试版本;发布了一种实验性的、称为 DAB(分布式应用包)的自由文件格式,该文件格式基于 JSON,用于构建多容器应用传送和部署中所需的所有应用组件;开放了新 Docker 仓库,及用于 Docker 数据中心 AWS 快速入门和 Azure 市场模板的封闭测试版本。

最新版 Docker,即 1.12 版,计划将于今年七月发布。该版本以在 Docker 引擎中集成了 Docker Swarm 为主要特性,并将容器编排工具授权为Docker 的内置命令。 Solomon Hykes ,Docker 公司的创建人及 CTO,指出 Docker 团队相信通过添加该附加功能,将会使 Docker 引擎成为编排工具的构建模块,形成“用于多容器分布式应用运行的自组织、自恢复的机器池”的引擎创建模式。

“当前编排工具的发展阶段类似于当年 Docker 出现前容器化的发展。此前对一个应用系统,你或者需要一个专家队伍去构建它,或仅依靠个人所能的单一平台由此导致系统选型完全受限。三年前,我们通过引入容器实现了对非专家可用的、而非锁定于专家的系统构建,这使得容器化技术成为主流。我们认为对于编排工具,当前我们正在做着同样的事情。”

Docker 1.12 的设计基于以下四个原则

  • 简单而强大 - 编排工具是当前分布式应用的核心部分;“考虑到它具有如此核心的地位,我们已经将它集成入 Docker 引擎的内核。”
  • 有弹性 - 机器可在任何时刻发生故障。当前系统应考虑到这样的故障可能经常出现,具有自适应能力以避免应用出现任何宕机。
  • 安全性 - 安全性应是系统的默认考量。系统应该去除诸如证书生成及 PKI 强制理解等影响强安全性的障碍。但是,高级用户应仍可以对认证签名和签发的各个方面进行控制和审计。
  • 特征可选和向后兼容 - 所有新特性都应是可选的,且选用这些特征不会引入额外的开销(内存,CPU)。

为支持编排工具,Docker 引擎远程API 中已添加了新的API,包括服务节点,并使用了与现有编排系统,诸如 Kubernetes CloudFoundry 等,相似的术语。 Ben Golub ,Docker 公司 CEO,指出该新特性将在所有可下载的 Docker 引擎 1.12 版中集成。但是为了维持 API 的向后兼容性,“Swarm 模式”默认是未启用的。

“Docker 引擎中的编排工具与其它现有模块匹配,但也允许用户继续使用任何基于 Docker 引擎所构建的第三方编排工具。”

Hykes 宣称已经公开运行于Mac 和Windows 系统上的 Docker 测试版,并在当前可下载的软件中已包括了 Docker 1.12 测试版。该测试版的目标在于提供“Mac 和 Windows 系统上的无缝开发环境”,其主要特征包括:更快速及可靠的原生开发环境。不同于 VirtualBox 虚拟机,Docker 使用了构建于各个系统平台中虚拟层; 容器内的调试和研发。Docker 改进了卷支持技术,可在文件发生了改变时自动告知 Docker 引擎,进而在容器内做相应更新;原生的网络支持,这使得运行于 Mac 和 Windows 系统上的 Docker 可有效支持 VPN。

此次会议还发布了应用于 AWS Azure 平台的 Docker 测试版,是一种“集成的、易于部署的环境,用于云环境中应用的构建、组装及发送”,它提供了在 AWS 和 Azure 中高效地安装、配置和维护 Docker 部署的方法。该测试版的目标包括:实现标准Docker 平台的部署,以确保应用可从团队中每个开发者的电脑中无缝地迁移到Docker 的模拟部署和生产环境中,而没有兼容性或者锁定的风险;与底层基础设施的深度集成,以确保Docker 可使用宿主机的原生功能环境,为管理员提供其所熟悉的操作界面;针对在公开云中部署的相关的硬件、操作系统及硬件设施,该测试版将确保提供可用的最新Docker 版本,并为Docker 版本的升级提供“切实可用的更新途径”。

在以上发布内容之外,Golub 还展示了一种仍处于试验阶段的基于JSON 的自由文件格式,称为 DAB(分布式应用包)。DAB 用于构建和打包发送在部署多容器应用中所需的所有应用组件。DAB 中包括运行应用所需所有服务的描述信息,以及所使用的 Docker 镜像、映射的端口及用于服务间关联的网络信息。

“在使得应用部署稳定且可重构之外,DAB 还避免了复杂应用构建中需要创建许多独立服务的繁琐操作。这使得 DAB 成为 Docker 1.12 版本所引入的、在服务概念之上的一种更实用的抽象。”

新 Docker 商店的封闭测试版已经开放,其目的在于提供一个对可信且可用的 Docker 化软件的交易市场。Docker 商店将包括免费的、开源的及商业的软件,其目标包括:向 ISV 提供可扩展的自服务系统,用以分发经认证的、“可直接用于企业级应用”的内容;提供一种验证软件质量的发布过程,该验证过程包括:安全性扫描、组件发现、开源许可使用情况及最优方法在镜像构建中的使用情况;从已验证可信的发布者处,为企业用户提供兼容的、具有商业支持的、打包为 Docker 镜像形式的软件;具有商店中软件的搜索、浏览及分类功能。

“我们 Docker 商店的设计目标,是围绕于将 Docker 用户和 Docker 生态系统的合作者联系在一起。”

会议最后还发布了用于 Docker 数据中心 AWS 快速入门和 Azure 市场模板,目的在于提供“具有产品就绪且高可用特点的、在数次点击内即可完成的 Docker 数据中心云部署”。其中的 AWS 快速入门使用了 CloudFormation 模板,而 Azure 市场模板使用了预先构建的模板,以达成“前所未有地易于在公有云基础设施中部署企业级容器即服务(CaaS)的Docker 环境”。 Docker 数据中心包括 Docker 通用控制面板 Docker 可信注册(DTR)、提供商业服务支持和订购以匹配企业应用 SLA 的 CS Docker 引擎

在本次 DockerCon 2016 会议中,Docker 运维的着力点得以明确。在一次媒体午餐会上,Golub 说近 25% 的会议参加者具有与运行或系统管理功能相关的职务。他提出,虽然容器的引入使得企业“运维工作或许会发生改变”,但是将应用部署单元标准化为容器还应避免处理各种应用打包格式所导致的复杂性,由此才可大大简化对已部署应用的理解、保全及管理工作。

Golub 指出,“在近 15 年内所编写的任何应用都可以被容器化”,但他也强调此事应慎重而为之。他分享了多个企业中所遇到的实际情况。这些企业从一开始就使用 Docker 将其应用整体容器化,进而按计划将这些容器分解为微服务模式应用,使得每个应用都运行于各自独立容器内。Golub 指出,Docker 的理念在于激励“增量变革”,因而企业在同时部署新的和旧的应用时,应该遵循“中间一致性”的原则。

要获取会议的更多信息,可访问 DockerCon 2016 会议的官方网站,或者访问 Docker 博客的“ dockercon ”主题中内容。

查看英文原文 DockerCon 2016: A Summary of Announcements and Key Takeaways


感谢张龙对本文的审校。

给InfoQ 中文站投稿或者参与内容翻译工作,请邮件至 editors@cn.infoq.com 。也欢迎大家通过新浪微博( @InfoQ @丁晓昀),微信(微信号: InfoQChina )关注我们。

2016-07-03 19:001582
用户头像

发布了 227 篇内容, 共 71.4 次阅读, 收获喜欢 27 次。

关注

评论

发布
暂无评论
发现更多内容

《看板方法官方指南》中文版发布了!

Bruce Talk

敏捷 Kanban Agile

你是做敏捷与DevOps的,还是做掉敏捷与DevOps的?

刘华Kenneth

DevOps 敏捷 转型 教练

Django 之模板篇

若尘

django Template Pattern Python编程 5月日更 模板

大厂必问 iOS 面试题 - (上)

原来是泽镜啊

程序员 面试 ios开发

花5分钟手写一个简单的HashMap,搞定挑剔面试官

北游学Java

Java 面试 hashmap

从外包辞职再到入职字节那天,我落泪了,没人知道我付出了多少

Java架构师迁哥

AI、智能健康与货币技术迎来大爆炸

容光

区块链 AI

【Flutter 专题】125 图解自传 ACE_ICON.ttf 图标库

阿策小和尚

5月日更 Flutter 小菜 0 基础学习 Flutter Android 小菜鸟

kube-controller-manager之AD Cotroller源码分析

良凯尔

Kubernetes 源码分析 Ceph CSI

技术栈,我该拿你怎么简化?

VoltDB

数据分析 5G 堆栈 边缘计算

一次事故,我对MySQL时间戳存char(10)还是int(10)有了全新的认识

华为云开发者联盟

MySQL 索引 时间戳 char int

Nginx通过Cookie做灰度就这么简单

运维研习社

nginx 运维 灰度发布 5月日更

iOS开发-60分钟入门

iOSer

ios iOS Document 移动开发 ios开发 iOS Developer

运营管理

Qien Z.

5月日更

架构师成长之路

soho

iOS面试题--基础篇

ios 程序员 面试 编程之路

不是我吹!看完阿里高工码出Java150K字面试宝典,进大厂稳了

Java 程序员 架构 面试

MySQL数据库事务隔离性的实现

华为云开发者联盟

MySQL 数据库 事务 数据库隔离 事务隔离

2021智能制造、智慧金融、智能安全有何发展趋势

容光

AI 金融

2021年CES十款智能家居黑科技产品

容光

人工智能

从 Object.assign 开始了解ES2015

devpoint

浅拷贝和深拷贝 ECMAScript 6 assign

虚拟机如何实现synchronized

wzh

虚拟机 并发 synchronized Java EE

Go 并发编程-channel 连接一切

Rayjun

Go 语言

数智化社会供应链助力消费体验提升 京东图书千万好书“先5折再满减”

科技范儿

想要成为架构师?你只要满足这些条件就可以

华为云开发者联盟

设计 工程师 架构师 软件系统 软件架构师

应用架构步入“无服务器”时代,Serverless技术迎来新发展

华为云开发者联盟

Serverless 华为云 无服务器 可信云 FunctionGraph

技术管理课学习笔记 01

escray

学习 极客时间 5月日更

dubbo-go v3 版本 go module 踩坑记

apache/dubbo-go

Apache dubbo dubbo-go

教你一招:让集群慢节点无处可藏

华为云开发者联盟

节点 GaussDB 集群 慢节点 慢实例

接招吧!最强“高并发”系统设计 46 连问,分分钟秒杀一众面试者

面试 高并发 Java 25 周年

Mysql InnoDB使用的锁

water

DockerCon 2016会议:发布内容的总结及主要收获_DevOps & 平台工程_Daniel Bryant_InfoQ精选文章