先定使用边界,再看配置

买一台,还是租一台

长期在手边工作,自购更直接。短期交付、远程协作或常驻构建,把工位放到云端更灵活。XcNode 提供独享 Apple Silicon 物理节点,不是虚拟机。

两档配置,$21.3/天起。先确认资源边界,再选择租期。

采购方式

比较的不只是机器价格

把设备采购、部署时间和闲置责任放在同一张表里。虚拟机的能力取决于具体服务,不能仅凭“云端 Mac”这个名称判断。

三种使用方式的投入与责任边界
比较项 自购 Mac 云端虚拟机 XcNode 独享物理机
前期投入 一次性购买设备;还要安排放置、供电、网络和远程访问。 按服务商配置与周期付费;核对资源配额和额外计费项。 按天、周、月或季预付,不需要先购置一台设备。
交付速度 采购到货后,自行安装工具链、配置网络并验证构建。 按服务商流程创建实例;系统镜像和工具版本需另行核对。 支付与交付状态在控制台查看;拿到凭据后连接并验证工程。
macOS 许可合规 在 Apple 硬件上运行;软件使用仍需遵守相应许可条款。 确认宿主硬件、虚拟化方式和服务条款,不能只看系统名称。 在 Apple Silicon 物理节点上运行原生 macOS,不采用虚拟机交付。
性能稳定性 资源由自己管理;本地交互、测试和构建可能相互竞争。 核对是否共享宿主、CPU 配额、GPU 支持和存储限制。 一台机器只分配给一个租户;自己的并行任务仍会争用机器资源。
团队共享 自行管理网络入口、成员权限、密钥和图形桌面使用顺序。 取决于实例权限、访问方式和服务商的协作限制。 可安排远程开发或 CI;成员权限、构建队列和桌面会话由团队管理。
闲置成本 项目结束后仍持有设备,承担折旧、存放和运维责任。 按服务商规则停用;核对磁盘、快照等是否继续产生费用。 按项目选择租期;已开始的周期不会因停止构建自动暂停计费。
配置对照

两档机型,规格逐项看

先看统一内存和工程占用,再看租金。以下是基础机型价格,不含存储扩展或 Thunderbolt 5 并联附加项。

两档在售机型;所有价格均以美元结算
配置 / 周期 Node Core M4 Node Pro M4
芯片M4M4 Pro
统一内存16GB64GB
SSD256GB2TB
日付$21.3/天$59.1/天
周付$57.6/周$159.6/周
月付$106.7/月$295.6/月
季付$290.2/季$804/季
可选节点新加坡 / 东京 / 首尔 / 香港新加坡 / 东京 / 首尔 / 香港
选型起点单人 Xcode 构建、串行自动化打包、TestFlight 分发。并行模拟器测试、大型 Swift 工程、较高内存需求的本地模型实验。
选择配置 租用 Node Core M4 租用 Node Pro M4

两档均提供四个节点,实际可用状态以控制台实时返回为准。选型不是性能保证:同一个工程的依赖规模、编译选项、缓存命中率和测试并发,都会影响资源占用。

租期选择

短期冲刺看天、周,常驻 CI 看月、季

下表每格是一种独立周期的目录价格,不是将日价累加后的估算。周期越长,越需要先确认项目会持续占用这台机器。

同一机型的四周期价格并列
机型按天按周按月按季
Node Core M4$21.3$57.6$106.7$290.2
Node Pro M4$59.1$159.6$295.6$804

交付冲刺:先圈定使用范围

只需复现一次构建、完成一轮发布或验证工具链,先按天安排;任务覆盖连续工作周,再比较周付。把依赖下载、证书配置和产物备份也算进使用时间,不要只计算编译那几十分钟。

常驻任务:确认连续运行需求

每日跑 CI、保存稳定的构建缓存,或长期保留团队开发环境,可以比较月付与季付。先用真实工程验证,再决定更长周期;机器持续在线,不代表你的 runner 和构建脚本已经配置好自启。

美元结算。仅支持 USDT-TRC20 与 Visa / Mastercard / Amex(经 Stripe),实际可用网关以后端接口返回为准。附加项价格及账单组成请查看方案页。

资源边界

独享物理机,解决的是共享宿主的问题

原生 GPU、统一内存和完整 macOS 环境是一组能力;任务调度、工程兼容性和网络体验,是另一组需要自己验证的条件。

整台资源归同一个租户使用

XcNode 不把同一台机器拆成多个租户的虚拟实例。CPU、GPU 和统一内存不与其他租户分摊,也不依赖虚拟 GPU 映射。Xcode、模拟器和 Metal 在原生 macOS 环境中运行。

独享不等于无限并发。编译进程、模拟器、索引服务和模型推理仍然共享你这台机器的内存。先观察内存压力,再增加并行度;不要一开始就把所有 runner 同时开满。

一个租户,一台物理节点

用实际工作负载验证环境

虚拟机是否适合你的工程,要核对 GPU 支持、系统权限、宿主共享方式和工具兼容性。不能简单断言所有虚拟机都慢,也不能把“能启动 macOS”视为完整开发环境。

物理节点同样需要验证 Xcode 版本、依赖架构、签名设置和模拟器运行时。远程桌面还受往返延迟影响;如果主要执行命令行构建,优先使用 SSH 与自动化队列。

先验证,再扩展并行任务
迁移准备

数据 → 工具链 → CI 接入

把迁移分成三个可验收的阶段。以下时间是人工准备的预算区间,不是交付承诺;大仓库传输、依赖下载和完整测试可能需要更久。

01 · 数据

先同步工程与必要文件

准备预算:15–60 分钟

用 Git 获取源码,使用 Git LFS 拉取大文件,或通过 rsync 同步工作目录。不要直接搬运全部缓存;先确认仓库、子模块和构建所需资源完整,再通过安全连接传输签名证书。

rsync -av --exclude DerivedData \
  ~/project/ cloud-mac:~/project/

验收:源码版本一致,必要资源可读,敏感文件未进入公开仓库。

02 · 工具链

对齐版本,不靠手工猜测

准备预算:20–90 分钟

检查 Xcode 路径与版本,将 Homebrew、Ruby 依赖和 Fastlane 配置写进清单。先执行一轮本地脚本式构建,再接自动化平台;这样更容易区分工具链问题与 runner 问题。

xcode-select -p
xcodebuild -version
bundle exec fastlane --version

验收:版本明确,同一条构建命令可重复运行并生成预期产物。

03 · CI 接入

注册 runner,再配置自启

准备预算:15–45 分钟

从 GitHub Actions 或 GitLab CI 获取注册指令,绑定团队项目。先用低并发跑通构建、测试和产物上传;确认服务运行用户能访问工程、钥匙串与缓存目录后,再配置开机自启。

cd ~/actions-runner
./svc.sh install
./svc.sh start

验收:队列能领取任务,日志可追踪,重启后的服务行为符合预期。

命令中的 cloud-mac 是你在 SSH 配置中设置的节点别名;runner 示例要求先完成下载与注册。迁移完成后保留本地备份,在清理旧环境之前核对归档产物与测试结果。

最后三个问题

先选机型,再选租期

大内存决定配置,持续使用决定周期。常驻 CI 本身并不意味着必须选择 Pro。

需要大内存并行测试吗?

如果多个模拟器、大型 Swift 工程或本地模型同时运行,并且已经观察到明显内存压力,优先比较 Node Pro M4 的 64GB 统一内存。若以串行构建和单人发布为主,可以从 Node Core M4 开始验证。

这台机器会常驻 CI 吗?

先看同时运行的任务数,而不是只看“CI”这个标签。串行流水线可以先验证 Core;多路测试再评估 Pro。若每天都需要领取任务并保留缓存,比较月付或季付,同时配置服务自启与产物备份。

使用时长确定了吗?

排查故障、验证构建或一次发布冲刺,先比较天与周。已经验证环境、项目持续运行,再比较月与季。结束前导出产物、备份工程,并确认续费或到期安排;不要把节点当成唯一的数据副本。

节点选择与机型选择分开考虑。新加坡、东京、首尔、香港均提供两档配置;从团队常用网络测试连接体验,优先选更适合主要使用者的节点。仅凭地理距离不能保证网络延迟。

按项目租,不必先买一台

从一轮真实构建开始。选择机型、节点与租期,在控制台核对最终配置和金额,再完成下单。