【AICon】硅谷视野+中国实践,汇聚全球顶尖技术的 AI 科技盛会 >>> 了解详情
写点什么

Docker 1.9 正式发布,支持 Swarm 和多宿主机互联

  • 2015-11-06
  • 本文字数:2030 字

    阅读完需:约 7 分钟

近日,Docker 公司正式发布Docker 1.9 版本。该版本包含了正式用于产品的Swarm 和多宿主机互联功能,为Docker 引擎添加了新的卷管理系统,并修改了Compose 使其更好的支持多种环境。

为了更好的使用容器来完成相关工作,Docker 提出了一整套的解决方案——互联(Networking)负责创建虚拟网络,为容器间通信提供支持;Docker 引擎中新的卷管理系统负责为数据永久存储提供帮助;在这些基础上,Compose 负责运行应用程序。总而言之,该版本进行了重大升级,为扩展分布式应用产品提供了基础。

多宿主机互联

在今年6 月份的DockerCon 上,互联曾经作为测试版本的特性被提出。目前,该特性正式集成在了Docker 引擎的稳定版中,并将在产品中使用。其主要功能是为跨宿主机创建Docker 引擎中的虚拟网络提供支持。用户可以把其所属的容器挂载到网络中,并控制网络拓扑和通信方式。此外,系统还允许用户在不修改应用的情况下直接与任何网络进行集成。更多详情可以参考Docker 官网中的互联专题博客和Docker 的相关工程师即将举行的专题在线会议

永久性存储

永久性存储是很多分布式应用一直想要使用的功能。在Docker 1.8 中,用户已经可以通过卷插件和第三方的存储系统实现该功能。为了更好的满足用户需求,Docker 1.9 直接内置了一个全新的卷管理系统,使得用户可以更加见得的使用插件。而且,该系统可以和Swarm 协同工作,实现集群内永久性存储的管理。通过以下例子,即可看出新系统使用 Flocker 插件的便捷程度:

复制代码
$ docker volume create -d flocker --name=myvolume
$ docker run -v myvolume:/data busybox sh -c "echo hello > /data/file.txt"
$ docker run -v myvolume:/data busybox sh -c "cat /data/file.txt"

此外,系统还提供了用于 Blockbridge Ceph ClusterHQ EMC Portworx 的驱动器。更多细节可以参考卷文档卷插件文档

Docker Swarm 1.0

Swarm 是一个为 Docker 引擎服务的原生集群系统。在新的版本中,Docker 公司对 Swarm 进行了重新测试和升级,消除了若干 bug,并进行了性能优化。Docker 公司表示,和互联以及卷管理系统结合在一起,Swarm 完全可以用于用户产品。而且,Docker 公司已经在 1000 个节点 /30000 个容器规模下进行测试,工作正常。

Docker 引擎 1.9

新版的 Docker 引擎中加入了一些新的特性:

  • Dockerfile 中的编译时参数:用户可以在 Dockerfile 中定义参数,然后传递给docker build来定制编译镜像的方式。例如,用户可以通过设置HTTP_PROXY来定制一个依赖包的安装版本等。
  • 并发式拉取镜像:如果用户想要拉取的镜像已经在拉取列表中,系统会显示拉取进度,并正确退出命令。否则,系统会同时进行多个镜像的拉取。
  • 定制化停止信号:引擎中添加了一个STOPSIGNAL Dockerfile 指令,允许用户可以定制化运行docker stop时的信号。
  • AWS CloudWatch 记录驱动:如果用户使用 AWS 服务,新版引擎支持将容器日志直接发送到 CloudWatch。
  • 磁盘 I/O 统计:docker stats可以直接显示磁盘的 I/O 情况。

Docker 引擎的完整特性列表可以参看版本说明

Docker Compose 1.5

Compose 是一个定义和运行多容器应用程序的工具。该版本中新添加的特性如下:

  • 支持 Windows:Compose 目前可运行在 Windows 环境中,并已经集成在 Windows 版本的 Docker 工具箱中。
  • Compose 文件中的环境变量:通过使用环境变量,用户可以使得 Compose 文件中的任何内容在运行时可配置。
  • 更好的支持多种环境:用户可以指定一个单独的基础文件,来描述应用程序的结构和开发 / 测试 / 产品流程中的重载情况。
  • 和互联集成在了一起:用户可以部署一个跨多个宿主机的 Compose 应用。
  • Compose 文件的验证:Compose 目前可以彻底验证用户的 Compose 文件,并将错误信息进行输出。

Compose 的完整特性列表可以参看版本说明

Docker 工具箱

用户可以通过 Docker 工具箱来使用所有在开发中的工具。它包含了以上所有工具的最新版本,并将其集成为了一个统一的安装包。此外,它还包括了在个人电脑和云提供商处创建 Docker 引擎的 Machine 0.5 工具。而 Machine 目前一经拥有了可插拔的驱动器。对于目前部支持 Docker 容器的云平台,用户可以编写自己的驱动器。

Docker Registry 2.2

该版本 Registry 的新添加特性如下:

  • 支持 Google 云存储:用户可以把层和 manifest 文件存储到 Google 云平台中。
  • 只读模式:该模式可用于防止不安全的管理员级别任务修改系统文件。
  • 可配置的文件存在检查和 HTTP 健康检查:管理员可以通过放置一个文件在文件系统中来临时关闭 Registry。Registry 可以通过配置,来检查通知端点等其他服务器的健康程度。
  • 可配置的 HTTP 响应头:用户可以定制 Registry 的 HTTP 响应头,提供安全或处理速度等。

Registry 的完整特性列表可以参看版本说明


感谢郭蕾对本文的审校。

给InfoQ 中文站投稿或者参与内容翻译工作,请邮件至 editors@cn.infoq.com 。也欢迎大家通过新浪微博( @InfoQ @丁晓昀),微信(微信号: InfoQChina )关注我们,并与我们的编辑和其他读者朋友交流(欢迎加入 InfoQ 读者交流群InfoQ 好读者)。

2015-11-06 18:004180
用户头像

发布了 268 篇内容, 共 118.5 次阅读, 收获喜欢 24 次。

关注

评论

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

10月15日 Apache IoTDB & SeaTunnel 联合 Meetup | 讲座回顾

Apache IoTDB

数据治理:数据集成的关键技术

用友BIP

软件测试/测试开发 | 如何安装Jenkins 插件?

测试人

软件测试 持续集成 jenkins 自动化测试 测试开发

软件测试/测试开发 | Jenkins 多任务关联

测试人

软件测试 持续集成 jenkins 自动化测试 测试开发

阿里巴巴正式开源云原生应用脚手架

阿里巴巴中间件

阿里云 开源 云原生

容器在公有云上的落地姿势

亚马逊云科技 (Amazon Web Services)

容器 亚马逊云科技 Builder 专栏

Vue基础知识和案例展示

代码的路

Vue

闲话 dubbogo 社区

阿里巴巴中间件

阿里云 云原生 dubbo

Frp流量隐匿对抗排查

领创集团Advance Intelligence Group

内网渗透 Frp 流量编排

大数据开发课程哪个机构好

小谷哥

学习大数据开发技术后好找工作吗?

小谷哥

TensorBoard的使用

代码的路

tensorflow

还在高投入自建物联网平台?教你如何节省三分之二成本——实践类

阿里云AIoT

安全 物联网 物联网安全 技术标签

雄关漫道真如铁,而今迈步从头越 | 挥别2022,再战2023!

BoCloud博云

博云

如何使用 rust 写内核模块

阿里巴巴中间件

阿里云 rust 云原生

MarkDown文件插入图片并上传GitHub

代码的路

markdown

pip安装报错:No such file or directory 'conda-forge' 没有那个文件或目录 'conda-forge'

代码的路

Python

看这篇就够了丨基于Calcite框架的SQL语法扩展探索

袋鼠云数栈

教你3步完成阿里云物联网平台公共实例到企业实例的迁移——实践类

阿里云AIoT

安全 物联网 物联网安全 技术标签

Redis的String类型,原来这么占内存

杨同学technotes

redis 底层原理

玩转物联网平台规则引擎-设备数据与业务应用高效协同——实践类

阿里云AIoT

安全 物联网 物联网安全 技术标签

如何选择适合自己的物联网平台?技巧在这里!——实践类

阿里云AIoT

网络安全 安全 物联网 物联网安全 技术标签

EMQX在Kubernetes中如何进行优雅升级

EMQ映云科技

运维 物联网 IoT 节点 企业号 1 月 PK 榜

MobaXterm链接linux虚拟机报错Network error: Connection refused

代码的路

mobaxterm

零基础培训学习大数据课程怎么样

小谷哥

软件测试/测试开发 | Jenkins通过什么方式报警?

测试人

软件测试 持续集成 jenkins 自动化测试 测试开发

北京零基础前端软件培训班学习怎么样

小谷哥

软件测试/测试开发 | Jenkins中,如何管理用户及其相对应权限?

测试人

软件测试 持续集成 jenkins 自动化测试 测试开发

浪潮云分布式云ICP加速千行百业羽化创新

浪潮云

云计算

web前端程序员培训前景怎么样

小谷哥

SpringBoot实现多线程

代码的路

Java springboot

Docker 1.9正式发布,支持Swarm和多宿主机互联_语言 & 开发_张天雷_InfoQ精选文章