刘梦馨 分布式实验室
我们很高兴的宣布 Docker 1.8 的发布,最新的版本包含了对镜像签名的支持,新的安装器以及 Engine、Compose、Swarm、Machine 以及 Registry 的多项改进。
你们过去总是和我们说想要一个扩展性更好的 Docker 以及一系列更小的可单独运行组件所组合起来的 Docker。我们清楚的听到了你们的呐喊。
在七月。我们宣布将 runC 作为一个独立组件来发展的路线。随着这次新版的发布,我们又一次向这个目标推进了一步。这次发布的镜像签名系统是一个独立的组件,名称为 Notary。在 1.7 中存储卷插件是一个试验特性,现在该功能已经被集成到稳定发行版中。
总体来说,这次的更新主要对那些你们懂的,在生产环境运行 Docker 的重要方面进行了提升。
Docker 可信镜像是 1.8 所提供的一个新功能,这使得我们只和可以去校验一个镜像的发布者。当发布者将镜像 push 到远程的仓库, Docker 会对镜像用私钥进行签名。之后去 pull 这个镜像,Docker 会用发布者的公钥来校验该镜像是否和发布者所发布的镜像一致,是否被篡改过是否是最新版。
更多关于可信镜像的内容以及 TUF 的使用可以参考这篇博客(http://blog.docker.com/2015/08/content-trust-docker-1-8/)。
和 Docker 一同发布的还有我们为 Mac OS X 以及 Windows 所准备的新安装器 Docker Toolbox。
Toolbox 是获取以及运行 Docker 生产环境最快捷的方式。它将会安装 Docker 客户端,Machine,Compose(Mac 环境下)以及 VirtualBox 所有你运行 Docker 所需要的工具。
快来下载 Docker Toolbox 吧,或者在这篇博客(http://blog.docker.com/2015/08/docker-toolbox/)中阅读更多 Toolbox 相关的内容。
在最新版 Docker 中我们引入了存储卷插件的实验特性,允许用户选择第三方存储系统作为存储卷的后端。存储卷插件目前已经集成到 Docker 稳定版本中,社区的小伙伴们也积极的将各种存储系统与 Docker 进行集成。Blockridge, Ceph, ClusterHQ和 EMC 都已经加入到我们的生态系统之中。
在 1.6 版本我们加入了日志驱动,使得用户可以将日志直接从容器输出到如 syslogd 这样的日志系统中。在本版本,我们加入了对更多日志系统的支持:GELF, Fluentd 以及一个可以再你的磁盘上切割日志的驱动。
除此之外,我们还加入了一些会让你喜欢的小功能:
从宿主机向容器复制文件:
docker cp
过去只能从容器向外复制文件,现在他可从另一个方向工作了:docker cp foo.txt mycontainer:/foo.txt
Daemon command:现在运行 daemon 可以通过新的 docker daemon 命令来启动,来替代之前的 -d 选项。这使得 docker 的命令行选项对于客户端 (
docker --help
) 和 daemon (docker daemon --help
) 区别更加的清晰。定制化 ps 格式:
docker ps
现在接受一个--format
选项可以用你来自定义该命令的输出格式。可配置的客户端配置文件目录:Docker 客户端将一些配置文件存放在 ~/.docker 中。为了应对你需要在一台机器上运行多个客户端的情况我们新蹭了
--config
选项来设置配置文件路径以及DOCKER_CONFIG
环境变量。
在完整的发布日志中可以得到更多细节相关信息。在安装指南中介绍了标准的升级不中。如果你的系统是 Ubuntu、Debian、Fedora、CentOS 或者 Oracle Linux,你可能会对我们本版本最新加入的 apt 和 yum 源感兴趣。
遥想四月份,我们发布了 Registry 2.0 并且引入了新的镜像格式以及针对 pull 镜像性能更好的架构。现在我们发布了 Registry 2.1,这是一个更快,更安全的 Registry 并提供了下面一些新的特性:
List 镜像:现在你可以用新的 API 来列出你仓库中的镜像。
新的存储驱动:除了 Amazon S3 以及 Azure 外,镜像现在可以存储在 OpenStack Swift, Ceph Rados 以及 Aliyun OSS 上。
软删除:现在你可以通过 API 来删除仓库中通过引用所指向的镜像及 layer。
在发布日志中可以获得完整的细节信息,或者可以直接从开始文档开始。
我们升级了 Compose, Swarm 和 Machine 来更好的支持编排分布式应用。下面是 Compose 1.4 的新特性:
大幅提速:你将会发现你的应用启动和停止都变得特别特别特别快。Compose 现在只会在需要时重新创建容器,并且尽可能的并行执行操作。
自定义容器名: 你可以在 Compose 文件中传入
container_name
选项来给服务容器一个特定的名称。从标准输入读取配置:Compose 现在可以从标准输入读取配置,你可以自动画的生成配置文件:
$ echo 'redis: {"image": "redis"}' | docker-compose --file - up
在发布日志中有详细的细节介绍。如果你的系统是 Mac OS X,那么你可以下载 Toolbox 来试验 Compose。如果你在其他系统平台请参考安装手册(http://docs.docker.com/compose/install/)。
Machine 0.4 作为安装 Docker 开发环境的推荐方式,现在默认包含在 Toolbox 中。这个版本支持为 Engine 配置 HTTP 代理以及其他一些小的功能。更多细节在发布日志中可以查看,也可以直接下载 Toolbox 来试验 Machine。
Swarm 0.4 现在已经是稳定可靠的了。它包含了一些列内建调度器的优化以及 Mesos 驱动器的优化。现在你可以通过 Docker 工具来控制一个 Mesos 集群。更多细节可以参考发布日志 或者通过开始手册来运行 Swarm。
加入我们即将到来的由工程师主导的 Docker 线上 meetup 来讨论 Docker 1.8 的相关特性,包括插件,可信镜像以及 Toolbox。点击http://www.meetup.com/Docker-Online-Meetup/进行注册。