Commit 16
适合单个 App 的 Xcode 构建、fastlane 出包,以及先跑通 SSH、VNC 和开发工具链。若还要并行开模拟器与容器,先核对项目的实际内存占用。
按天租用一台独享物理 Mac mini,而不是共享虚拟机。从选机型、取得连接资料到跑通首次构建,沿着下面的顺序操作即可。
付款后约 15 分钟交付;首次连接与检查所需时间取决于你的密钥、项目和签名准备情况。
起租 1 天;两档 M4 机型,租期可选天、周、月或季。实际可用性以控制台实时返回为准。
下单时依次选机型、节点、租期与支付方式。单次发版可以从 1 天开始;需要连续运行 CI 时,再比较周、月、季租期。租期按所选周期一次付清,以美元结算。
适合单个 App 的 Xcode 构建、fastlane 出包,以及先跑通 SSH、VNC 和开发工具链。若还要并行开模拟器与容器,先核对项目的实际内存占用。
适合 Xcode、模拟器与容器并行,或需要为 MLX 模型及构建缓存留更多空间的任务。模型文件较大时,可在下单时查看 SSD 附加选项。
可选新加坡、日本(东京)、韩国(首尔)、香港、美国东部和美国西部。优先选离团队和代码服务较近、你能稳定连通的节点;两档机型均覆盖这 6 个节点。
支付仅支持 USDT-TRC20,或经 Stripe 处理的 Visa / Mastercard / Amex;实际可用网关以控制台返回为准。
交付信息在控制台查看。不要把登录资料、私钥或签名证书贴进工单正文;需要排查时,提供订单号和脱敏后的错误输出即可。
| 交付字段 | 用来做什么 | 核对方式 |
|---|---|---|
| 主机地址 | 指定 SSH 与 VNC 连接目标。 | 复制控制台提供的地址,确认没有附带多余空格。 |
| 用户名 | 与主机地址组成 SSH 登录身份。 | 使用订单对应的账号,不要猜测系统默认用户名。 |
| SSH 公钥 | 授权你的设备通过密钥登录。 | 上传公钥文件内容;私钥只保存在自己的设备上。 |
| VNC 访问方式 | 打开 macOS 图形界面。 | 按交付页给出的连接方式与凭据操作,不把 VNC 当成 SSH 端口使用。 |
先在自己的电脑生成一对密钥,再将公钥上传到控制台。上传后用本机私钥发起连接;不要在远程主机上生成用于登录这台主机的唯一私钥。
先核对地址、用户名和公钥,再检查本地网络能否到达目标。如果 TCP 连接超时,优先排查网络;如果提示公钥拒绝,优先核对身份与授权。
在本地终端依据交付信息设置连接变量。先确认 macOS 与处理器架构,再在项目目录查询可用 scheme;只有确认项目 scheme 与签名配置后,才执行项目构建或归档。
ssh -i ~/.ssh/id_ed25519 "$VM_USER@$VM_HOST"连接建立后,命令提示符会切换到远程 Mac。首次连接时,请核对主机指纹与交付信息。
sw_vers -productName
uname -m
sysctl -n machdep.cpu.brand_string预期分别看到 macOS、arm64 和 Apple M4;具体系统版本以交付机器实际输出为准。
xcodebuild -list
xcodebuild -scheme "$SCHEME" -destination 'generic/platform=iOS' build CODE_SIGNING_ALLOWED=NO不签名的编译用于先验证项目能否构建。成功时检查退出状态与 BUILD SUCCEEDED;失败时从第一条构建错误开始排查。
fastlane gym --scheme "$SCHEME"归档与导出需要项目所需的证书、描述文件和 fastlane 配置。命令结束后检查导出结果,而不只看最后一行日志。
这里的 VM_USER、VM_HOST 和 SCHEME 是 shell 变量:先用交付信息及项目实际 scheme 为它们赋值。若项目依赖特定 Xcode 版本,运行 xcodebuild -version 核对后再切换。
SSH 适合传文件、跑构建和查日志;需要操作 Xcode 界面、模拟器或系统设置时,再按交付信息连接 VNC。两种方式访问的是同一台独享物理 Mac mini。
在 VNC 客户端输入交付页指定的地址和访问资料。不要直接把 SSH 的用户名、密钥或端口照搬到 VNC 客户端。
从客户端较低的显示分辨率开始;画面与输入都稳定后,再提高分辨率。跨区域操作时,优先保证响应速度,而不是一开始就追求最高画质。
让实际构建仍可通过 SSH 命令复现。这样 VNC 会话断开时,构建、日志和 CI 排障不必依赖桌面画面。
若出现黑屏,先确认连接到了正确的订单与节点,再检查会话状态;不要反复修改项目或删除构建缓存来处理远程画面问题。
准备接入 GitHub Actions self-hosted runner 时,先在代码仓库的 runner 设置中生成注册命令与短期令牌,再到这台 Mac 上执行平台当次提供的命令。令牌不写进仓库、截图或构建日志。
将 runner 注册到需要构建的仓库或受控组织,并给它设置能识别这台 macOS 主机的标签。确认界面显示 runner 在线后,再提交工作流。
工作流先检出代码,再执行与手动验证相同的 Xcode 命令。成功后才逐步加入依赖缓存、测试、签名和分发,避免一次引入多个故障点。
runner 能访问这台机器上的构建环境。为可触发的分支与仓库设置权限边界,妥善管理签名资料;租期结束前移除不再使用的 runner 注册。
先验证 runner 被正确选中、代码能检出、xcodebuild -version 与手动检查一致,再运行已验证的 scheme。工作流中的 scheme、目标平台和签名开关应与项目匹配,不能直接把示例命令当成所有项目的出包配置。
租期从交付时刻起算。把备份、runner 清理和续租决定留在到期之前;不要把唯一一份源码、证书或构建产物留在远程机器上。
核对源码提交状态,取回归档、日志、模型文件与配置,并在自己的存储位置验证文件可以打开。签名资料按团队既有安全流程保管。
如果构建尚未完成,在控制台查看续租;如果并行任务受内存或磁盘约束,比较 Commit 16 与 Commit 24 的规格,再按实际需求调整。
检查 CI 队列是否仍有任务、runner 是否还绑定仓库。到期后的数据处理以服务条款与控制台展示的规则为准,备份应在租期内完成。
需要确认连接方式、构建命令或计费规则时,先查文档。想系统整理远程开发环境,可到博客查找「远程 Mac 开发环境搭建」;文章内容以博客当前发布为准。
从 1 天开始,选节点与机型;交付后沿这份清单完成首次构建。