苹果基于什么系统 苹果基于linux系统吗

圆圆 0 2025-06-27 12:00:20

苹果 containerization 提供了面向 macos 的原生 linux 容器支持

作者 | Claudio Masolo

策划| Claudio Masolo 张卫滨

苹果在2025年的全球开发者大会(WWDC)上发布了容器化和容器CLI,在Mac上以轻量级虚拟机方式创建和运行Linux容器的工具。这是开发者在macOS上运行Linux容器方式的重大转变,因为这个新的开源容器化框架消除了对Docker等第三方工具的需求。这个基于Swift的框架将在macOS 26中直接提供的Linux 容器支持,让容器以安全、性能和隐私为进入了化领域。

传统的容器化方法关注解决方案会在单个大型虚拟机中运行多个容器,与之不同,苹果的是在轻量级虚拟机中运行每个 Linux 容器。这种架构提供了节点的关键优势:增强安全性:每个容器获得与完整虚拟机隔离级别的相同,这显着减少了攻击面。最小​​化的文件系统不包含核心实用程序、动态库或 libc实现,进一步降低了安全风险。专用资源:每个容器都有自己的IP地址,消除了端口转发的需求,并提供了高性能的网络访问。CPU 和内存资源按容器分配,当容器不运行时不消耗资源。隐私设计:目录和文件仅基于每个容器进行共享,确保请求的容器可以访问共享内容而不是其公开给共享虚拟机中的所有容器。

容器化框架广泛使用了 Swift,包括一个完全用 Swift 编写的自定义初始化系统 vminitd。这个初始化系统作为每个虚拟机中的第一个进程运行,并处理以下任务:网络的 IP配置文件系统挂载,包括容器的块设备进程启动和监管主机 - 容器通信的 API 管理

为了在没有标准库的环境中实现这一点,使用 Apple Swift 的静态 Linux SDK 直接从 macOS 交叉编译静态 Linux 二进制文件,结合 musl 提供静态链接支持。

每个容器都在自己的虚拟机中运行,但苹果声称通过优化实现了亚秒级的启动时间:优化 Linux内核:为容器化工作负载特别设计的自定义内核配置EXT4块设备:容器文件系统作为一个自定义的EXT4块设备进行暴露,以实现性能访问Apple Silicon优化:整个技术栈Apple针对定制的硅 架构进行了优化

Apple为构建容器化解决方案的开发者提供了框架,并提供了一个命令行工具供立即使用。容器CLI工具提供了熟悉的类Docker命令:代码语言:javascript代码运行次数:0运行复制#拉取镜像容器镜像pull alpine:latest#运行一个可进行的容器容器运行-t -i alpine:latest sh登录后复制

该工具提供XPC服务,用于存储、镜像管理、网络服务和容器运行时管理,所有这些都是使用容器化 API 构建的。

苹果已经在 GitHub 上将容器化框架和容器 CLI 工具作为开源项目发布。

代码仓库包括:框架和工具的完整源代码演示集成的示例项目技术文档和架构的概述vminitd中使用的跨平台Swift包

苹果进入容器化领域加入了一个已经形成的开源替代Docker的生态系统,这些替代方案最近获得了显着的关注。由红帽开发的Podman是领先的Docker替代方案,它提供了符合OCI标准的容器管理,具有无守护进程架构,消除了对root的依赖权限的需求。这种无 root 操作提供了增强的安全性,使 Podman 在安全关键的环境中特别受到它的关注。其他关注的解决方案包括容器化,它作为 Kubernetes 使用的底层容器运行时,以及 Buildah,专门用于在需要完整容器运行时的情况下构建容器镜像。像 LXD 这样的工具关注于系统容器而不是应用程序容器,而像 Rancher Desktop这样的解决方案提供了进行容器管理的用户界面的图形界面。Apple 的独特方法,即在每个容器中运行自己的轻量级虚拟机,将其与这些现有的解决方案区分开来,这些解决方案需要依赖于共享内核容器化技术,例如 cgroup 和命名空间。

容器化框架和 containerCLI 将随 macOS 26 提供开源组件,在 GitHub 上立即可用。开发者可以探索框架,积极开发做出贡献,并开始在 macOS 上构建原生集成 Linux 容器的解决方案。

查看中文译文:

Apple Containerization a Native Linux Container Support for macOS(https://www.infoq.com/news/2025/06/apple-container-linux/)

声明:本文由 InfoQ 翻译,许可禁止转载。

点击底部阅读原文访问 InfoQ 官网,获取更多精彩!

以上就是 Apple Containerization 提供了面向 macOS 的近期 Linux 内容集装箱支持的详细内容,更多请关注乐哥常识网其他相关文章!

上一篇:如何重装macOs 12 如何重装mac台式机系统教程
下一篇:返回列表
相关文章
返回顶部小火箭