Docker 1.6发布:Engine与编排工具更新、Registry 2.0及Windows客户端预览

简介: 本文讲的是Docker 1.6发布:Engine与编排工具更新、Registry 2.0及Windows客户端预览,【编者的话】Docker 1.6版本发布了,一同发布新版本的还有Registry 2.
本文讲的是Docker 1.6发布:Engine与编排工具更新、Registry 2.0及Windows客户端预览 【编者的话】Docker 1.6版本发布了,一同发布新版本的还有Registry 2.0、Compose、Swarm、Machine以及Docker Windows客户端,这次的变更很赞,值得一试!

我们很高兴来宣布对Docker Engine、Registry、Compose、Swarm和Machine的更新。我们将它们同时发布,因此你可以一起测试,同时可以承载多个跨工具的特性。这些用来改善开发体验的新特性主要有更快的拉取镜像、Windows的预览版Docker客户端以及在Compose开发环境下支持更多的应用。

Docker Engine 1.6

Docker Engine从1.5版本以来已经有了很大提升,同时带来了新的特性以及Windows客户端的支持。我们创造这么多令人惊讶的版本都离不开如此棒的社区贡献者们。你可以从 下载Docker Engine 1.6 开始体验,并阅读 变更日志

下面让我们来一起看看Docker Engine1.6中有哪些新内容。

容器和镜像标签

标签使得用户可以附加自定义的元数据到容器和镜像上,这可以通过你的工具来使用。这个特性已经被反复提出一段时间了。社区在设计上达成共识并满足大多数的使用场景,于是它成为1.6的一部分了。

谢谢 Darren Shepherd ,是他贡献的这个补丁。如果你对这个功能感兴趣,你可以查看 这个任务 并阅读 Darren的博客 来了解标签是如何应用在Rancher中。

Windows客户端预览版

我们非常的幸运拥有一些很棒的微软工程师来帮助我们,他们的集体努力使得Docker的Windows客户端能够有一个官方的版本。了解你的软件在一个特定的操作系统上是如何编写,这是非常有意思的事情,因此我们非常感谢这些Windows专家们在这个过程中对于我们的指引。

Windows客户端同一个远端宿主机一起工作,就像Mac客户端一样。我们甚至扩展了测试框架来适应Windows客户端,当测试每一个PR到Engine的任务。

你可以在这篇 Ahmet Alp Balkan的博客 中阅读到更多关于Docker Windows客户度的内容,他是我们一个主要贡献者,已经提交 70个PR

日志驱动器

对于一个日志驱动的API已经有了持续增长的需求了,它使得你可以发送容器日志到其他系统中,如Syslog或者其他第三方工具。这个新的日志驱动延续了现在Engine中的exec驱动和存储驱动的概念。

docker run 中增加了一个新的可选项参数 --log-dirver ,它有三个选项: json-file (这是个默认选项,和以前的功能一样)、 syslog none 。其中 syslog 驱动补丁只有70行代码,希望这是一个先例,让人们明白未来添加其他补丁到Docker中是多么容易的事情。一定不要忽视 none ,在特定的重量级的应用中,你可能不关心日志(如irssi), none 是一个很好的选择。

感谢 Alexander Morozov 的补丁。阅读更多信息,请去查看关于日志驱动的 PR 以及 syslog的补丁

内容定位的镜像标示符

以前当你拉取、构建或者运行镜像时,用 namespace/repository:tag 形式来指定他们,或者只有 repository 。在有了 Andy Goldstein 的补丁之后,你现在可以在拉取、运行、构建时使用一个新的内容定位标示符,它叫做digest,语法是: namespace/repo@digest 。Digest是一个不可变的引用到镜像中的内容。

使用digest的案例是围绕应用补丁和更新。如果你想要推出一个安全更新,你现在可以指定镜像中特定的digest做安全更新,确保服务器正在运行安全更新。

这个特征旨在v2版本的registry中支持,更多信息关于这个补丁,请参考 PR 。你也可以阅读 文档

--cgroup-parent

容器由命名空间、功能和Cgroups组成。Docker已经支持了自定义的命名空间和功能。另外,在这个版本中我们已经增加了对自定义cgroups的支持。通过 --cgroup-parent 标签,你可以传递一个特定的cgroup来运行一个容器在里面。这使得你自己可以创建和管理cgroups。你可以为这些cgroups定义自定义的资源并且把容器放在一个通用的父组中。

谢谢 Vish Kannan 的补丁,到 这里 阅读更多信息。

Ulimits

直到现在,容器从docker守护进程中继承ulimit设置。这可能会导致极高地占用生产环境负载,但这样并不理想。Ulimts使得你可以限制一个给定进程的资源(你可能已经熟悉 ulimit 命令)。在这个特征的帮助下,你可以在设置守护线程时指定默认的 ulimit 设置给所有的容器。例如:
docker -d --default-ulimit nproc=1024:2048

这将为所有的容器设置一个软限制1024和一个硬限制2048子线程。你可以多次设置这个可选项,例如:
--default-ulimit nproc=1024:2408 --default-ulimit nofile=100:200

当这样创建一个容器时,这些设置会被覆盖:
docker run -d --ulimit nproc=2048:4096 httpd

这会覆盖默认的 nproc 值。

感谢 Brian Goff 的补丁。感兴趣的话,请阅读最初的 PR

Dockerfile命令在提交和导入时可以被使用

在Docker Engine1.6的惊艳特征中,最后但并非最不重要的更新是使得对镜像的变更可以on the fly,而不需要重新构建整个镜像。新特征 commit --change import --change 使得你可以指定标准变更来应用到新的镜像。这些添加在Dockerfile语法并用于修改镜像。相应的Dockerfile说明在 docker commit docker import 中罗列,文档在 这里

感谢 Dan Walsh 的补丁,如果你想了解更多内容,请阅读 下拉请求

Registry 2.0 + Engine 1.6 = 更快的镜像拉取

由于全面的重构Registry和Engine 1.6中新的Registry API支持,拉取镜像的性能和可靠性已经大幅提升。今天已经在DockerHub支持,同时我们已经发布Registry2.0可用于自行搭建。更多内容在 这里

Compose 1.2

Compose是一个在Docker上定义和运行复杂应用的工具。今天我们同时发布Compose1.2,它包括一个新的特征使得你可以扩展服务到其他Compose文件,这样就可以定义不同环境而不需要重复劳动。当然,也还有其他新特性,请查阅 文档

Swarm 0.2

Swarm是一个原生Docker集群。它将一群Docker宿主机变成一个单一,虚拟的主机。Swarm 0.2在二月发布的0.1版本的基础上构建。它包括下面几个新内容:
  • 传播策略:一个新的策略来调度集群中的容器,在可用的节点中传播它们。
  • 更多Docker命令支持:更多进展关于支持完整Docker API的工作已经完成,例如支持拉取和检阅镜像。
  • 集群驱动:这已经不是第三方的驱动了,但第一步已经向构建一个嵌入式驱动接口迈进。未来可能会在集群系统上使用Swarm,如Mesos。

更多内容在 这里

Machine 0.2

Machine使得在你的机器、云提供商和你的私有数据中心上创建Docker宿主很容易。Machine 0.2向一个稳定版本的Machine迈出了一步。主要集中在提高稳定性和扩展性上:
  • 明确驱动接口:现在更容易来为提供商写驱动。
  • 更加可靠和持久化供应:供应服务器现在由Machine处理,而不是让每个驱动各自做事。
  • 重生成TLS认证:一个新命令已经被添加,为了更好的安全事件以及其中某个宿主机的IP变更,它用于重新生成一个宿主机的TLS认证。

这里 查阅变更文档, 下载 Machine 0.2。

总结

我们非常兴奋关于新版本的发布而且对未来的充满了希望。感谢这个项目的所有贡献者,这些都离不开你们的帮助。同时,我们感谢所有人,感谢你们对发布版的测试、问题发现和提出。我们希望你们可以享受这次版本。贡献者和管理者:我们在IRC上关注着你们。再次感谢大家!

原文:DOCKER 1.6: ENGINE & ORCHESTRATION UPDATES, REGISTRY 2.0, & WINDOWS CLIENT PREVIEW(译者:陈杰 审校:田浩浩)

===============================================
译者介绍
陈杰 ,北京理工大学计算机学院在读博士,研究方向是自然语言处理在企业网络信誉评价方面的应用,平时也乐于去实现一些突发的想法。在疲于配置系统环境时发现了Docker,跟大家一起学习、使用和研究Docker。

原文发布时间为:2015-04-17
本文作者:Sonyfe25cp
本文来自云栖社区合作伙伴DockerOne,了解相关信息可以关注DockerOne。
原文标题:Docker 1.6发布:Engine与编排工具更新、Registry 2.0及Windows客户端预览
相关实践学习
日志服务之使用Nginx模式采集日志
本文介绍如何通过日志服务控制台创建Nginx模式的Logtail配置快速采集Nginx日志并进行多维度分析。
目录
相关文章
|
22天前
|
安全 网络协议 网络安全
【Docker项目实战】使用Docker部署web-check网站分析工具
【4月更文挑战第20天】使用Docker部署web-check网站分析工具
55 1
|
24天前
|
安全 Linux Nacos
使用Docker运行Nacos并安装cpolar内网穿透工具实现远程访问
使用Docker运行Nacos并安装cpolar内网穿透工具实现远程访问
|
1月前
|
JavaScript 测试技术 Linux
【Docker项目实战】使用Docker部署CodeX Docs文档工具
【4月更文挑战第8天】使用Docker部署CodeX Docs文档工具
59 1
|
1月前
|
测试技术 网络安全 数据安全/隐私保护
【Docker项目实战】使用Docker部署Mininote轻量级笔记工具
【4月更文挑战第7天】使用Docker部署Mininote轻量级笔记工具
93 2
|
1月前
|
Kubernetes Linux Windows
第二章 Linux和windows部署helm 客户端
第二章 Linux和windows部署helm 客户端
31 0
|
2月前
|
测试技术 API 开发者
【Docker项目实战】在Docker环境下部署go-file文件分享工具
【2月更文挑战第15天】在Docker环境下部署go-file文件分享工具
76 1
|
2月前
|
安全 测试技术 数据安全/隐私保护
【好用的个人工具】Docker环境下部署FileDrop文件共享工具
【2月更文挑战第13天】Docker环境下部署FileDrop文件共享工具
75 2
|
2月前
|
JavaScript 测试技术 数据安全/隐私保护
【Docker项目实战】使用Docker部署Mikochi文件管理工具
【2月更文挑战第12天】使用Docker部署Mikochi文件管理工具
83 5
|
16天前
|
存储 Kubernetes C++
【专栏】Kubernetes VS Docker Swarm了解两者特点,助力选取合适容器编排工具
【4月更文挑战第27天】对比Kubernetes和Docker Swarm:K8s在可扩展性和自动化方面出色,有强大社区支持;Swarm以简易用著称,适合初学者。选择取决于项目需求、团队技能和预期收益。高度复杂项目推荐Kubernetes,快速上手小项目则选Docker Swarm。了解两者特点,助力选取合适容器编排工具。
|
4天前
|
监控 Cloud Native 测试技术
云原生之使用Docker部署ServerBee服务器监控工具
【5月更文挑战第6天】云原生之使用Docker部署ServerBee服务器监控工具
12 1