news 2026/4/23 15:49:10

OCI(Open Container Initiative 开放容器计划)介绍(镜像规范、运行时规范、分发规范)(libcontainer、runc)Manifest、Bundle、OCI镜像

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
OCI(Open Container Initiative 开放容器计划)介绍(镜像规范、运行时规范、分发规范)(libcontainer、runc)Manifest、Bundle、OCI镜像

文章目录

  • 揭开OCI的神秘面纱:容器技术的“通用语言”与生态基石
    • 🌱 从一个日常场景说起
    • 🔍 什么是 OCI?
    • 📜 OCI 的三大核心规范:容器世界的“宪法三章”
    • 🌍 OCI 如何重塑容器生态?
    • ❌ 常见误区澄清
    • 🛠️ 30 秒体验 OCI 标准的力量
    • 🌟 为什么 OCI 值得被记住?
    • 💫 结语

揭开OCI的神秘面纱:容器技术的“通用语言”与生态基石

本文中的OCI = Open Container Initiative(开放容器计划),与 Oracle Cloud Infrastructure 无关。容器世界里,它才是真正的“标准制定者”。


🌱 从一个日常场景说起

你是否经历过这样的场景?
✅ 用podman build构建镜像 → 推送到 Harbor → 在 Kubernetes 集群中由 containerd 拉取运行
✅ 用 Buildah 打包的镜像 → 被 Skopeo 无缝传输 → 在 CRI-O 中完美启动

为什么不同工具链能如此丝滑协作?
答案藏在一个低调却至关重要的名字里:OCI(Open Container Initiative)


🔍 什么是 OCI?

OCI(开放容器计划)是由 Linux 基金会于2015 年发起的开源治理项目,由 Docker、CoreOS(现 Red Hat)、Google 等行业先锋共同推动成立。
它的使命清晰而坚定:为容器技术制定开放、中立、免版税的行业标准,终结“厂商私有格式”的碎片化时代。

💡关键背景:Docker 将其核心组件libcontainer捐赠给 OCI,演变为runc——如今全球最主流的 OCI 运行时参考实现。


📜 OCI 的三大核心规范:容器世界的“宪法三章”

规范作用关键内容代表实现
镜像规范(Image Format)定义“容器长什么样”Manifest(清单)、Layers(分层)、Config(配置)Docker Build, Buildah, Kaniko
运行时规范(Runtime)定义“容器如何跑起来”Bundle 结构、生命周期操作、隔离机制(namespaces/cgroups)runc(基石)、crun、youki
分发规范(Distribution)定义“镜像如何传输存储”Registry API、内容寻址、多架构支持(Manifest List)Docker Registry, Harbor, ORAS

举个栗子
当你执行docker pull nginx
1️⃣ 分发规范 → 从 Registry 拉取镜像清单
2️⃣ 镜像规范 → 解析 layers 与 config
3️⃣ 运行时规范 → runc 创建容器进程
三规范环环相扣,全程标准化!


🌍 OCI 如何重塑容器生态?

  • 打破工具孤岛
    Buildah 构建 → Skopeo 传输 → Podman 运行 → containerd 管理,全链路互通无阻。

  • 终结供应商锁定
    企业可自由组合开源工具(如 Harbor + Buildah + CRI-O),无需绑定单一商业方案。

  • 赋能云原生基石
    Kubernetes 通过 CRI 接口调用符合 OCI 运行时规范的组件(containerd/CRI-O),实现集群级容器调度。

  • 激发创新活力
    WASM 容器(如 wasmtime)、安全容器(如 Kata Containers)均基于 OCI 规范扩展,生态持续进化。


❌ 常见误区澄清

误区正解
“OCI 镜像 = Docker 镜像”Docker 镜像是 OCI 规范的一种实现。OCI 是标准,Docker 是参与者之一。
“OCI 是 Docker 的子项目”OCI 是独立中立的 Linux 基金会项目,Docker 仅为创始成员之一。
“只有 Docker 支持 OCI”Podman、Buildah、containerd、nerdctl 等主流工具均原生支持 OCI。
“OCI 和 Oracle 云有关”容器语境下OCI = Open Container Initiative,与 Oracle Cloud Infrastructure 无关(注意上下文!)

🛠️ 30 秒体验 OCI 标准的力量

# 1. 用 Buildah(OCI 构建工具)创建镜像buildah bud -t demo-app.# 2. 用 Skopeo(OCI 传输工具)推送到仓库skopeo copy containers-storage:demo-app docker://my-registry/demo-app:oci# 3. 用 containerd(OCI 运行时)拉取并运行ctr images pull my-registry/demo-app:oci ctr run my-registry/demo-app:oci demo-container

✅ 无 Docker daemon ✅ 全链路 OCI 标准 ✅ 工具自由组合


🌟 为什么 OCI 值得被记住?

  • 它让“一次构建,到处运行”成为现实
    不再是口号,而是由规范保障的技术事实。
  • 它守护开源生态的开放性
    任何厂商无法独占标准,社区共建共享。
  • 它默默支撑着现代云原生世界
    从你的本地开发机到百万级 Kubernetes 集群,OCI 是看不见的“通用语言”。

💫 结语

OCI 从不喧哗,却让整个容器世界得以高效对话。
它像 USB 接口之于硬件——你无需关心设备品牌,插上即用;
它像 HTTP 协议之于互联网——无声无息,却连接万物。

下次当你轻松运行一个容器时,不妨对这位“幕后英雄”心生敬意:
标准,是技术世界最温柔的革命。

📚 延伸阅读

  • OCI 官网:https://opencontainers.org
  • 镜像规范文档:https://github.com/opencontainers/image-spec
  • 运行时规范文档:https://github.com/opencontainers/runtime-spec
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/17 13:36:56

OpenHarmony环境下React Native:SearchBar搜索建议

OpenHarmony环境下React Native:SearchBar搜索建议 摘要 本文将深入探讨如何在OpenHarmony 6.0.0 (API 20)环境下使用React Native 0.72.5实现SearchBar搜索建议功能。通过详细分析SearchBar组件在跨平台开发中的适配要点,结合流程图和对比表格展示技术…

作者头像 李华
网站建设 2026/4/23 10:56:34

Jmeter的进阶功能

1. 逻辑控制器 1. if逻辑控制器 要求:如果用户是张三我们就发送一个百度请求,否则就不发送。 新增一个用户变量 userName 新增一个逻辑控制器 > if控制器 把http请求拖到if控制器下面,让if控制器成为Http请求的父亲 执行发现条件满足&a…

作者头像 李华
网站建设 2026/4/23 3:58:44

百考通AI:重新定义本科毕业论文写作,一场以学生为本的智能革新

毕业季的钟声再次敲响,对于广大本科生而言,毕业论文这座“大山”依然横亘在通往学位的必经之路上。选题的迷茫、文献的瀚海、结构的混乱、格式的繁琐,每一项都足以消耗学子们本就紧张的精力与时间。面对这一普遍性难题,传统的写作…

作者头像 李华
网站建设 2026/4/23 10:51:29

malloc 在多线程下为什么慢?——从原理到实测

malloc 在多线程下为什么慢?——从原理到实测 摘要 在高并发或频繁分配的场景下,程序性能经常被 malloc/free 吃掉。本文带你从零开始理解 malloc 在多线程下的主要性能问题(arena 锁竞争、缓存一致性、上下文切换、元数据与碎片等&#xf…

作者头像 李华
网站建设 2026/4/22 17:06:37

基于SpringBoot的高尔夫球场管理系统统的设计与实现

高尔夫球场管理系统的背景 高尔夫运动作为一项高端休闲体育活动,近年来在全球范围内逐渐普及。随着参与人数的增加,高尔夫球场的运营管理面临诸多挑战,包括会员管理、场地预约、设备维护、财务结算等。传统的手工或半自动化管理方式效率低下…

作者头像 李华
网站建设 2026/4/23 10:50:45

基于springboot的就业推荐管理系统设计实现

背景分析 随着高校毕业生人数逐年增加,就业市场竞争加剧,传统招聘方式存在信息不对称、匹配效率低等问题。学生难以精准获取岗位信息,企业也面临人才筛选成本高的挑战。SpringBoot作为轻量级Java框架,能快速构建高可用的就业推荐…

作者头像 李华