Rocket 和 App Container 0.2.0 发布


【编者的话】本文来自CoreOS官方博客,本周Rocket和App Container都发布了0.2.0版本,Rocket 0.2.0引入了很多新特性,包括容器检查工具和生命周期管理工具,同时改进了镜像的安全校验。官方团队强调,为了保证Rocket的简单性,Rocket没有引入其它的守护进程或者数据库。应用容器标准现在也已经稳定,0.2.0是Rocket自发布以来的首个里程碑版本。

本周 RocketApp Container(appc)同时发布了0.2.0版本。自从我们在11月份推出该项目,便很快拥有了一个非常活跃且健康的社区。Rocket已经默认使用加密签名,并且一个新兴的社区正在独立实现appc规范。

Rocket 0.2.0

在过去的几周里,在Rocket上可以快速构建开发,现在我们已经发布了0.2.0版本。本次发布是一个重要的里程碑版本,包含很多新的功能和改进,比如保证获取镜像经过安全验证,新加有关容器内检和生命周期管理的工具。

值得注意的是,这个版本引入了一些新的重要的子命令:

  • rkt enter, 进入Docker容器中某个应用程序所在的命名空间;

  • rkt status, 检查Docker容器和应用程序的状态;

  • rkt gc,对老的不再使用的容器进行回收;


为了保证Rocket的简单和可组合的目标,所以我们在实现生命周期相关的子命令时,并没有引入其它的守护进程或者数据库。Rocket充分利用了已经存在的文件系统和Linux内核语义,比如协同文件锁、原子重命名、在进程退出时隐式关闭已经打开的文件。

v0.2.0版本同时也标志着自动签名验证时代的到来:当通过 rkt fetch或者rkt run命令获取镜像的时候,Rocket会默认验证自己的签名。Kelsey Hightower专门写了指导手册来解释这一功能。签名验证的背后是一个灵活的存储公钥的系统,这样就可以容易使用一个新的rkt trust的子命令。这是Rocket在其安全之路上迈出的小但却非常重要的一步。

下面是一个获取最新的etcd版本时的公钥(在这个例子中CoreOS ACI 签名公钥之前已经被使用它的进程信任)验证示例:
$ rkt fetch coreos.com/etcd:v2.0.0-rc.1
rkt: searching for app image coreos.com/etcd:v2.0.0-rc.1
rkt: fetching image from https://github.com/coreos/etcd/releases/download/v2.0.0-rc.1/etcd-v2.0.0-rc.1-linux-amd64.aci
Downloading aci: [=============================                ] 2.31 MB/3.58 MB
Downloading signature from https://github.com/coreos/etcd/releases/download/v2.0.0-rc.1/etcd-v2.0.0-rc.1-linux-amd64.sig
rkt: signature verified: 
CoreOS ACI Builder <release@coreos.com>

App Container 0.2.0

应用容器规范方面的工作仍再继续进行,但目前已经相对稳定。在本周的早些时候,一些主要的变化已经在通知邮件中强调过了。
本周合并了两个不同的规范实现 jetpack (a FreeBSD/Jails-based executor) 和 libappc (一个与应用容器相关的C++库)。这两个项目的作者为这个合并提供了很多很有用的反馈和 pull request。

Jetpack, FreeBSD 的应用容器
Jetpack,是一个实现了 FreeBSD 的App Container规范的参考实现。它使用 jails 作为应用隔离机制,使用 ZFS 做存储。Jetpack是一个跨平台的可移植的appc的最好例证。

libappc, 应用容器的C++库
libappc是一个操作应用容器的 C++ 库。该库的目标是提供一个灵活的工具包来实现 manifest 解析、创建,可嵌入式的发现、映像的创建提取和缓存,以及一个精简配置的文件系统等。

原文链接:Rocket and App Container 0.2.0 Release(翻译:隋鑫 审校:郭蕾)

2 个评论

Rocket 0.2.0,侧重点更多的是安全,亮点不多。
先从安全考虑的软件,后面的发展会很健壮。国人思维是现有功能再有安全。

要回复文章请先登录注册