写点什么

runC 1.0 发布候选版已公布

  • 2016-06-11
  • 本文字数:1311 字

    阅读完需:约 4 分钟

Open Container 项目旗下的轻量级通用运行时容器 runC 最近公布了 1.0 发布候选版。runC 是一种按照 OCP 规范生成和运行容器的 CLI 工具,代码已发布至 GitHub

容器技术逐渐受到用户和社区的欢迎,Linux 基金会早在 2015 年 6 月就成立了 OCI(Open Container Initiative)组织,旨在围绕容器格式和运行时制定开放的标准。该组织已得到包括 Amazon、华为、Google、Microsoft 等云供应商的支持。源自 Docker 的 runC 是通过开放容器格式标准(OCF, Open Container Format)制定的一种具体实现。

runC 的可嵌入特性使得容器可以作为 runC 的子进程启动,并能在无需运行 Docker 代理程序的情况下将其嵌套至各种其他系统中。runC 以 libcontainer 为基础开发而来,这种容器技术目前正驱动着全球数百万 Docker 引擎,用户可以直接通过 runC 运行 Docker 映像。

功能和主要改进

runC 的目标是让用户随时随地使用标准化的容器,其中包含大量广受欢迎的功能和特性,例如:

  • 完整支持 Linux 命名空间,包括用户命名空间。
  • 原生支持 Linux 的所有安全功能,包括 Selinux、Apparmor、seccomp、control groups、capability drop、pivot_root、uid/gid dropping 等。
  • 原生支持实时迁移和 Windows 10 容器。
  • 计划为 Arm、Power、Sparc 等架构提供原生支持,并直接得到 Arm、Intel、Qualcomm、IBM,以及整个硬件制造商生态系统的参与和支持。
  • 计划为前沿硬件功能提供原生支持,例如 DPDK、sr-iov、tpm、secure enclave 等。
  • 可移植的性能配置文件,以及成为正式标准的配置格式。

此次公布的 1.0 发布候选版是 OCI 运行时规范和 runC 1.0 的首个候选版本,该版本针对创建和启动等命令进行了较大调整。

容器的创建和启动过程现已拆分为两个步骤,通过这样的设计,上层系统可以在用户定义的过程启动前修改容器内容。如果依然希望像之前的版本那样使用 runC,则可以使用runc run命令。在该版本中,还可以使用runc state命令获取容器的状态信息。另外可以通过新增的ps命令查看容器内的进程:

除此之外,本次发布的 1.0 候选版还在下列几个方面有所改进:

  • 为更多架构提供了 seccomp 支持
  • 更稳定的状态输出
  • 增加了用于动态更新容器资源的update命令
  • 大量其他改进和 man 页面

目前可以将 1.3 版以上的 Docker 映像与 runC 配合使用。此外 runC 还可配合 systemd 使用。

社区观点

runC 是一种便携的轻量级容器运行时,其中包含了 Docker 用于与系统中和容器有关的功能进行交互的全部 plumbing 代码。与生俱来的安全性,适合当今大规模生产环境中的使用,以及与 Docker 平台其他组件的无关性(纯粹的容器运行时)使得这一技术获得了社区成员的好评。

Linux 基金会技术顾问委员会主席兼 Parallels 公司服务器虚拟化 CTO James Bottomley 谈到该技术时说:“我们终于可以用统一的方式操作 libcontainer 了。通过这个库,我们可以用更为细化的方式将容器功能暴露给 [用于运行新一代 Docker 类应用的] 应用程序,同时可以让我们在各种产品中通过更无缝的方式使用我们自己开发的各类工具。”


感谢郭蕾对本文的审校。

给InfoQ 中文站投稿或者参与内容翻译工作,请邮件至 editors@cn.infoq.com 。也欢迎大家通过新浪微博( @InfoQ @丁晓昀),微信(微信号: InfoQChina )关注我们。

2016-06-11 19:002013
用户头像

发布了 283 篇内容, 共 110.3 次阅读, 收获喜欢 62 次。

关注

评论

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

书单 | “阿里云数字新基建”系列丛书全家福来啦!

博文视点Broadview

过去一周热点回顾|Hoo虎符研究院 区块链简报 20220418期

区块链前沿News

虎符交易所

【ELT.ZIP】OpenHarmony啃论文俱乐部——浅析稀疏表示医学图像

ELT.ZIP

OpenHarmony 医学影像 稀疏矩阵 ELT.ZIP

【ELT.ZIP】OpenHarmony啃论文俱乐部——这些小风景你不应该错过

ELT.ZIP

神经网络 OpenHarmony ELT.ZIP

TASKCTL 连接不到服务器的4种情况

敏捷调度TASKCTL

分布式 调度引擎 ETL 自动化运维 调度任务

物联网低代码平台常用《组件介绍》

AIRIOT

开发 物联网 平台搭建、

移动端日历组件设计与实现

CRMEB

OceanBase 杨传辉参与数据库技术与应用发展研讨会

OceanBase 数据库

oceanbase

Java 操作 Office:POI word 之文档信息提取

程序员架构进阶

内容审核 4月日更 文档识别 4月月更

在线YAML转CSV工具

入门小站

工具

Android C/C++层hook和java层hook原理以及比较

云智慧AIOps社区

Java android 开发技能 hook

【愚公系列】2022年04月 二十三种设计模式(零)-简单工厂模式(Simple Factory Pattern)

愚公搬代码

4月月更

博云 BeyondCMP 云管理平台 5.6 版本发布

BoCloud博云

云管理平台

安全之花如何盛开在华为云空间的每个角落?

脑极体

火遍全网的MBTI人格测试,为什么会有那么多人相信?

小炮

MBTI

高效进行接口测试,简单易懂!

Liam

测试 Jmeter Postman swagger 测试工具

优秀程序员的30种思维(29/100)

hackstoic

技术思维

易周金融观点:遏制NFT金融化等打下监管良基

易观分析

NFT

Serverless 让我们的运维更轻松

领创集团Advance Intelligence Group

#Serverless

HLP分词后的文本如何在web端高亮显示

lo

前端 4月月更

TDesign 更新周报(2022 年 4 月第 3 周)

TDesign

国产化云平台如何实现多云管控,黄河云来“打样儿”

BoCloud博云

国产化 云管理平台

以OceanBase为例,分析事务型评测基准对分布式数据库的适用性

OceanBase 数据库

分布式数据库 oceanbase

图数据库|正反向边的最终一致性——TOSS 介绍

NebulaGraph

图数据库 知识图谱

用css制作旋转的立方体

云智慧AIOps社区

CSS 前端 大前端 3D css特效

Apache Doris (incubating) 1.0 Release 版本正式发布!

ApacheDoris

数据库 大数据 开源 OLAP apache doris

阿里云代码托管平台,不限容量,免费使用

阿里云云效

云计算 阿里云 代码管理 代码托管 阿里云代码托管

什么是代码加密?基于云效 Codeup的代码仓库加密是如何实现的

阿里云云效

云计算 阿里云 代码管理 Codeup 代码加密

深圳助力建设全国「数据交易」大市场,「隐私计算」技术赋能数据要素安全流通

洞见科技

如何做好任务管理,手把手教你怎么做最高效的任务管理

阿里云云效

云计算 阿里云 云原生 研发团队 项目协作

linux之rpm命令

入门小站

Linux

runC 1.0 发布候选版已公布_语言 & 开发_大愚若智_InfoQ精选文章