Lima成为CNCF孵化项目
CNCF技术监督委员会(TOC)已投票接受Lima作为CNCF孵化项目。Lima能够为运行云原生和AI工作负载提供安全、隔离的环境。
什么是Lima?它在云原生领域中的定位是什么?
Lima(全称“Linux Machines”)提供针对本地开发环境中运行容器而优化的Linux虚拟机。Lima内置支持以下容器引擎:
- containerd [CNCF已毕业](默认)
- Docker
- Podman [CNCF沙盒]
- Kubernetes [CNCF已毕业]
- k3s [CNCF沙盒]
- k0s [CNCF沙盒]
- Usernetes
- RKE2
- Apptainer
使用场景
除容器化外,Lima还被广泛用于其他场景。最具前瞻性的用例之一是在虚拟机内运行AI编码代理,以隔离代理对主机文件和命令的直接访问。这种设置确保即使AI代理被互联网搜索到的恶意指令(例如虚假软件包安装)欺骗,任何潜在损害也仅限于虚拟机内部或从主机挂载的指定文件。Lima网站展示了多个强化AI代理的示例:
- Aider
- Claude Code
- Codex
- Gemini
- GitHub Copilot CLI
- GitHub Copilot in Visual Studio Code
Lima的起源与发展
Lima项目由容器生态系统中的containerd及众多其他项目的维护者Akihiro Suda于2021年5月启动。项目最初设计为“containerd machine”,旨在向Mac用户展示和推广containerd,包括nerdctl(contaiNERD CTL)。随后项目范围扩展至支持其他容器引擎和非容器应用。Lima支持非macOS主机,如Linux、NetBSD和Windows。
Lima于2022年9月作为沙盒项目加入云原生计算基金会。此后,项目在贡献和采用方面持续增长,GitHub星标数翻倍。
知名采用者包括:
- Colima
- Rancher Desktop
- AWS Finch
- Podman Desktop [CNCF沙盒](作为扩展)
其他用户案例可参阅GitHub Discussions。
维护者观点
“我很高兴Lima在CNCF的指导下,从一个简单的演示工具演变为现代容器生态系统的基础。我希望Lima能获得更多采用,尤其是在沙盒化AI编码代理方面。” – Akihiro Suda,Lima创始维护者,NTT
“我很兴奋看到开发者已经在尝试Lima 2.0的外部驱动API,测试Apple Containers、libkrun和Proxmox。无需修改核心即可扩展Lima的能力,让我对社区如何探索和扩展本地虚拟化充满期待。” – Jan Dubois,Lima维护者,SUSE
TOC观点
“随着AI和云原生的融合,Lima在提供安全隔离的测试和开发环境方面发挥着重要作用。其轻量级虚拟机方法支持需要额外保护或可重现性的工作负载,同时不牺牲速度或可用性。项目入选CNCF孵化既反映了其技术成熟度,也体现了其在开发者和AI社区中日益增长的影响力。” — Ricardo Rocha,CNCF TOC赞助人
“Lima体现了定义云原生的实践驱动、社区驱动的创新。通过使运行具有类似容器工作流的Linux虚拟机变得容易,Lima以安全性和一致性连接了本地开发和生产环境。我期待看到Lima如何进一步发展和扩大其影响力。” — Chad Beaudin,CNCF TOC赞助人
主要组件
- limactl CLI
- containerd(默认容器引擎),具有可选功能启用器:
- gomodjail(增强供应链安全)
- bypass4netns(加速无根网络)
- eStargz(加速容器启动时间)
- Ubuntu(默认客户机操作系统)
- 模板
- 替代容器引擎(Docker、Podman等)
- 替代客户机操作系统(AlmaLinux、Debian、Fedora、openSUSE等)
- 虚拟机驱动
- Virtualization.framework(macOS系统组件)
- QEMU
- WSL2
- 文件系统驱动
- virtiofs(由Virtualization.framework提供)
- 9p(由QEMU提供)
- reverse-sshfs
- 网络驱动
- 基于gVisor的用户模式网络
- vzNAT(由Virtualization.framework提供),用于直接IP访问和更快吞吐量
- socket_vmnet用于高级网络模式
- 端口转发器
- eBPF端口扫描器
- Kubernetes端口扫描器
- SSH传输
- gRPC传输
显著里程碑
- 18,200+ GitHub星标
- 2,600+ 拉取请求
- 1,200+ 问题
- 78次发布
- 160名贡献者
- 8名来自独立组织和个人的维护者
最新发布
项目同时庆祝其v2.0发布,特性包括:
- 虚拟机驱动插件子系统,允许在不修改上游的情况下实现第三方虚拟机驱动
- 支持GPU加速,使用krunkit虚拟机驱动
- 模型上下文协议(MCP)服务器,允许保护在虚拟机外运行的AI编码代理
- 多项CLI改进
更多项目里程碑信息请参阅GitHub。
作为CNCF托管项目,Lima加入了一个与其技术利益一致的中立基金会,以及更大的Linux基金会,后者提供治理、营销支持和社区推广。Lima与孵化技术Backstage、Buildpacks、cert-manager、Chaos Mesh、CloudEvents、容器网络接口(CNI)、Contour、Cortex、CubeFS、Dapr、Dragonfly、Emissary-Ingress、Falco、gRPC、in-toto、Keptn、Keycloak、Knative、KubeEdge、Kubeflow、KubeVela、KubeVirt、Kyverno、Litmus、Longhorn、NATS、Notary、OpenFeature、OpenKruise、OpenMetrics、OpenTelemetry、Operator Framework、Thanos和Volcano并列。有关各成熟度级别要求的更多信息,请访问CNCF毕业标准。