Docker 要慌了?苹果开源 Container,Mac 原生容器时代来了!

简介: 一年前苹果发布Containerization框架并开源Container工具,现迎来1.0正式版!它为每个容器分配独立轻量VM,依托Apple Silicon与Virtualization.framework,兼顾启动速度与虚拟机级隔离。Mac开发者终于迎来原生容器新选择。(239字)

一年前,苹果在 WWDC25 上正式发布 Containerization Framework,并开源了官方容器工具 Container。

如今,Container 已迎来 1.0 正式版(一周岁啦)。从最初的预览项目,到如今正在成为 Apple Silicon 运行 Linux 容器的重要工具。

那么,Mac 开发者是否可以真正卸载「 Docker Desktop 」了呢?让我们一起深入体验 Apple Container。

1-cover.png


简介

对于 Linux 用户来说,容器可以直接运行在系统之上,因为它本质上依赖 Linux Kernel。

而 macOS 并不具有 Linux Kernel,因此无论是 Docker Desktop、OrbStack 还是 Lima,本质上都需要先启动一个 Linux 虚拟机,再在其中运行容器:

macOS
  ↓
Linux VM
  ↓
Containers

Apple Container 则采用了不同的设计方案:

macOS
 ├─ VM(Container A)
 ├─ VM(Container B)
 └─ VM(Container C)

为每个容器分配独立的虚拟机,而不是让所有容器共享一个 Linux VM。

借助 Apple Silicon、Virtualization.framework 和 Containerization Framework 的深度优化,在获得接近容器启动速度的同时,也提供了虚拟机级别的隔离与安全性。

简单来说,传统方案是 “一个 VM 运行多个容器”,而 Apple Container 则是 “一个容器对应一个轻量级 VM”


安装

系统支持

目前仅支持搭载 Apple Silicon(M 系列芯片)的 Mac,并要求系统版本为 macOS 26 版本。

获取软件包

公 Zhong 号 BugShare 内发送 苹果容器Apple Container 即可获取软件安装包。

自动补全

生成补全脚本:

mkdir -p ~/.zsh/completion

container --generate-completion-script zsh \
> ~/.zsh/completion/_container

编辑 ~/.zshrc,添加以下内容:

fpath=(~/.zsh/completion $fpath)

autoload -U compinit
compinit

重新加载:

source ~/.zshrc

使用

如果你熟悉 Docker,会发现 Container 的命令设计非常接近 Docker,因此非常容易上手。

版本检查

安装完成后,可以通过以下命令确认是否安装成功:

container --version

启动 Container 服务

与 Docker Desktop 不同,Container 采用独立的后台服务管理机制,首次使用前需要启动服务:

# 启动服务
container system start

# 查看服务状态
container system status

# 停止服务
container system stop

运行容器

首次运行会自动从镜像仓库拉取镜像并启动容器。

以 Nginx 为例:

# 运行容器
container run -p 8080:80 nginx
# 完整示例
container run \
  --name nginx-demo \
  --detach \
  --publish 8080:80 \
  --mount type=bind,source=$(pwd)/data/nginx/conf.d,target=/etc/nginx/conf.d \
  --mount type=bind,source=$(pwd)/data/nginx/html,target=/usr/share/nginx/html \
  nginx:latest
# 或简写参数
container run \
  --name nginx-demo \
  -d \
  -p 8080:80 \
  -e TZ=Asia/Shanghai \
  -v $(pwd)/data/nginx/conf.d:/etc/nginx/conf.d \
  nginx

# 查看当前运行中的容器
container list

# 查看详情
container inspect <container-id>

# 要进入容器内部
container exec -it <container-id> /bin/sh

# 查看运行日志
container logs <container-id>

# 实时跟踪日志
container logs -f <container-id>

# 停止容器
container stop <container-id>

# 删除容器
container delete <container-id>

管理镜像

# 查看本地镜像
container image list

# 删除镜像
container image delete <image-name>

构建镜像

Container 同样支持 Dockerfile 文件。

# 构建镜像
container build .

# 指定镜像名称
container build -t myapp:latest .

# 直接运行
container run myapp:latest

创建 Linux 环境

除了运行容器之外,Container 还提供了 Machine 功能,用于创建持久化 Linux 环境。

# 创建环境
container machine create alpine:latest --name dev

# 查看列表
container machine ls

# 进入 Machine
container machine run -n dev

# 停止
container machine stop dev

# 删除
container machine rm dev

Machine 更适合Linux 开发环境、编译环境、测试环境、长期运行服务等(使用体验类似 WSL2)。


Docker?

短期来看 Docker 不会被取代。因为开发者真正依赖的不只是容器,更多的是 Compose、Kubernetes、插件生态、调试工具、CI/CD 集成。

但从长期来看,Apple Container 很可能成为 Apple Silicon 上运行 Linux 容器的标准方案。


写在最后

之前,Mac 开发者一直依赖 Docker Desktop、OrbStack 等第三方来运行容器,而 Apple Container 的出现,意味着 Mac 原生容器时代正式到来。

它不是一个 Docker 替代品,更代表着苹果正试图基于 Apple Silicon 和自身虚拟化技术,重新定义在 macOS 上的容器运行方式。

目录
相关文章
|
3月前
|
缓存 安全 iOS开发
开源的 macOS 应用管理器和系统清理器
PureMac 是一款免费开源的 macOS 应用管理与系统清理工具,支持彻底卸载应用、清除残留文件及缓存日志等垃圾,释放磁盘空间。无订阅、无遥测、不收集任何用户数据,原生安全,智能扫描不误删。(239字)
398 1
|
IDE Linux 开发工具
Linux添加硬盘并进行分区、格式化、挂载及卸载
Linux添加硬盘并进行分区、格式化、挂载及卸载
1333 0
|
1月前
|
SQL 人工智能 文字识别
阿里开源的 AI 代码审查工具 open-code-review 来了
阿里巴巴开源Open Code Review(OCR),融合确定性工程与LLM Agent,已服务数万开发者、发现百万级缺陷。内置NPE、SQL注入等安全规则,支持CLI、Agent集成及多平台部署,让AI代码审查更精准、稳定、可落地。(239字)
2056 1
|
PHP
php-fpm的重启方法
php-fpm的重启方法
1970 0
|
25天前
|
人工智能 IDE 开发工具
阿里云Qoder CN(原通义灵码)全解析:产品形态、版本划分与技术适配指南
Qoder CN是阿里云推出的AI智能编码助手,前身为“通义灵码”,于2026年5月20日完成品牌升级,正式更名为Qoder CN。作为面向软件开发全流程的智能体产品,它覆盖编码、办公、终端等多元场景,基于国内主流大模型与国内部署架构,满足金融、政务等行业对数据安全与合规的高要求。
1093 0
|
1月前
|
JSON 自然语言处理 Shell
GLM 5.2 API 接入与部署实战:MIT 开源权重配置及百万上下文能力测试
智谱的 GLM 5.2 已经正式开放:Z.ai 的 Coding Plan API、Hugging Face 上的 MIT 开源权重、以及 20 多个第三方 coding 工具的支持,全部同步上线,不再是"下周见"。更关键的是这次发布带了真实跑分——不是 PPT 上的宣传,是能复现的 benchmark。 如果你之前因为"没有公开分数、权重还是占位仓库"而把它列进观望名单,现在可以把它划掉了。下面是接入路径:10 分钟跑通托管 API、Claude Code 一段配置切过去、以及想自托管时的本地部署实测数据。
|
1月前
|
人工智能 移动开发 小程序
互联网医院系统开发搭建:AI 智能问诊模块落地与架构优化
在智慧医疗加速普及背景下,AI智能问诊已成为互联网医院核心刚需。依托医疗大模型、RAG知识库与智能分诊引擎,实现症状初筛、精准分科、健康指导,缓解人工拥堵、提升分诊效率、释放医护压力,助力医疗数字化转型升级。
|
1月前
|
人工智能 测试技术
WorkBuddy 是什么?桌面 AI Agent 的工作流
WorkBuddy 是新型桌面AI Agent,不止聊天,更能理解任务、调用模型、连接插件、操作本地文件/浏览器/办公流程。它标志AI从问答工具升级为执行型助手,尤其赋能测试开发(用例生成、脚本编写等)、内容运营与知识工作,正引发新一轮技术竞争。
|
5月前
|
负载均衡 安全 应用服务中间件
为本地部署的大模型添加API Key认证:Nginx实现方案
本文介绍如何用 Nginx 为 Ollama/vLLM 等本地大模型服务添加 API Key 认证——零代码修改、配置即用,支持鉴权、限流与 HTTPS,让私有模型服务安全可控,调用方式与 OpenAI 完全兼容。(239字)
2268 1
|
7月前
|
JSON JavaScript 前端开发
Node.js 快速上手指南
Node.js 是基于 Chrome V8 引擎的 JavaScript 运行时,让 JS 脱离浏览器运行在服务端。支持异步 I/O、跨平台,适用于构建后端 API、CLI 工具与全栈应用。本指南涵盖安装、核心模块(fs、http、path、events)、NPM 包管理、Express 实战及文件上传示例,零基础也能快速上手,掌握 Node.js 核心开发技能。