Docker 1.0 发布

  • 郭蕾

2014 年 6 月 10 日

话题:DevOps语言 & 开发架构

6 月 10 日,Docker 官方团队宣布 Docker 1.0 发布。Docker 是由 DotCloud(PaaS 供应商)开源的、可以将应用打包到可移植的容器中运行的应用容器引擎,2013 年 3 月发布了首个版本。Docker 使得开发者和系统管理员能够在 Linux 环境中快速简单的部署自给自足的应用容器。

从第一个版本到 1.0 版本的发布,大约有 15 个月的时间。在这段时间里,Docker 逐渐成长为虚拟化技术领域的领先者,并得到了 Linux 发行商 Red Hat 和 Canonical 的支持。Docker 的目标是为开发者和系统管理员提供了一个构建、部署、运行分布式应用程序的开源平台。Docker 使用 Go 语言编写,由 Docker 引擎、容器运行时、打包工具以及 Docker Hub 组成,Docker Hub 是一个基于云的服务,可用于协作、内容和工作流的自动化。

Docker 的 CTO 以及创建者 Solomon Hykes 在一份声明中表示在过去的 15 个月里,Docker 收到了超过 460 位贡献者的 8741 条改进建议,社区帮助 Docker 迅速达到了这一新的里程碑。

Docker 1.0 的特性包括:

  • 质量:Docker 在质量、功能完整、后台兼容和 API 稳定性方面已经提升了一个级别,达到企业使用标准。
  • 兼容:Docker 目前可以运行在所有主流的 Linux 发行版本中,包括 Red Hat、Debian、Ubuntu、Fedora、Gentoo、SuSE、Arch。
  • 接口:Docker 提供了插件式的 API。
  • 扩展:通过Boot2Docker,用户可以在 Mac OS X 和 Windows 上使用。
  • 文档:完善的文档,包含了 Docker 的所有特性介绍以及入门指南。
  • 云服务:Docker Hub 可用于协作以及工作流的自动化。

在 Docker 的官方博客上 Julien Barbier 分别从开发者和系统管理员的角度介绍了 Docker 1.0 的新特性:

为开发者而生

  • 为 Docker build 引入一个新命令:COPY,可以从 build 上下文中复制文件和文件夹。
  • 改进了 ADD 命令和容量,在构建镜像时保持对文件的所有权和权限。

系统管理员的运维利器

  • Docker Engine 支持暂停 / 继续运行容器,用户可以回收(reclaim)容器正在使用的 CPU 周期,从而更好地安排系统资源。
  • 改进了设备访问的安全说明以及容器的兼容性。
  • 在存储和文件系统方面,改进了 Device Mapper,增加了 XFS 支持,增加了使用物理设备的功能,同时改进了容器的移除速度。
  • IANA 为 Docker 分配了端口:端口 2375 用于 HTTP ,2376 用于 HTTPS。

另外,Google 也对 Docker 有浓厚的兴趣,Google 认为 Docker 是一个可以改变人们对于当前软件认识的东西,它能够更简单地让每一个人都体会到海量计算性能所带来的便利。Google 也将会把 Docker 技术运用到 Google App Engine 和 Google Compute Engine 中。

Docker 中文社区的创始人马全一对 Docker 1.0 的发布发表了自己的看法,他认为 Docker 虽然发布了 1.0 版本,但是整个产品的成熟度还不够,离期望的生产级别还有一些距离,他猜测 Docker 发布 1.0 版本可能出于商业因素的考虑,但是这并不会妨碍 Docker 的发展,Docker 必定会成为云计算领域中的重要产品。另外 Docker 的 index.docker.io 升级为 registry.hub.docker.com,这是 Docker 在生态环境建设中迈出的非常重要的一步,马全一认为 Docker 的目标是成为整个生态环境的 Github。

DevOps语言 & 开发架构