使用文档

遇到问题,先找到对应步骤

从连接一台独享物理 Mac mini,到完成构建、管理租期与排查故障。输入命令或问题关键词,可在本页查找对应章节。

01 / 首次连接

先确认地址,再选择 SSH 或图形桌面

交付完成后,在控制台实例详情核对主机地址、用户名和连接方式。不要把示例命令里的变量直接当作真实凭据:运行前应将它们设为本次交付的值。

SSH 密钥登录

在本机生成密钥对,将公钥提交到控制台;私钥只留在自己的设备。确认实例已交付、密钥已关联,再使用实例详情中的地址和用户名连接。

ssh-keygen -t ed25519
ssh -i ~/.ssh/id_ed25519 "$USER@$HOST"

USER 与 HOST 是需由你在本地设置的环境变量。首次连接时核对主机指纹;不要跳过核验。

VNC 图形桌面

需要操作 Xcode、模拟器或系统设置时,按控制台实例详情提供的访问方式连接图形桌面。连接前先检查实例状态,再核对显示地址与访问凭据。

画面延迟明显时,先降低客户端分辨率或色深,并确认本地网络稳定。VNC 凭据不要写进构建日志,也不要与 SSH 私钥一起分享。

端口与防火墙

从控制台实例详情读取实际开放的端口;不要假设每台实例使用同一组端口。若 SSH 超时,先检查本地网络是否阻断出站连接,再核对主机地址、端口和实例状态。修改实例防火墙规则前,保留一条可用的管理连接,避免把自己锁在机器外。

02 / 构建工作流

先锁定工具链,再让构建可复现

在独享物理机上执行命令行构建时,先检查 Xcode 版本与项目要求是否一致。团队 CI 应固定工程、Scheme、签名材料的来源,避免一次成功依赖临时的桌面操作。

Xcode 版本与命令行工具

先列出机器上的 Xcode 安装,再选择项目需要的版本。切换后重新检查命令行工具路径与版本;以下路径仅在相应版本确已安装时使用。

ls /Applications | grep Xcode
sudo xcode-select -s /Applications/Xcode.app/Contents/Developer
xcode-select -p
xcodebuild -version

xcodebuild 与 fastlane

在项目目录先列出可用 Scheme,确认工程目标,再执行 Release 构建。使用 fastlane 的团队应将 lane 配置纳入版本管理,并在运行前检查证书与环境变量。

xcodebuild -list
xcodebuild -scheme App -configuration Release build
bundle exec fastlane gym

App 应换成工程中实际存在的 Scheme;gym 需要项目已有对应的 fastlane 配置。

01准备独立账户

为运行任务的系统账户设置所需权限,限定工作目录,不把 SSH 私钥或签名材料提交到仓库。

02注册 runner

在 GitHub Actions 或 GitLab 的项目设置中生成注册所需信息,再按平台给出的当前安装指令在 Mac 上完成注册。

03验证一条任务

先运行输出 sw_vers 与 xcodebuild -version 的小任务,确认执行节点正确,再接入完整构建。

如果这是第一次使用交付实例,可先按快速上手步骤完成连接和首次构建。

阅读术语

八个词,读懂实例与租期

以下术语用于区分你租到的设备、连接方式与计费单位。选择方案时,先看工作负载需要什么,再决定租期。

物理节点
实际部署 Mac mini 的地点。选择节点时考虑自己与协作者的网络位置;可在节点说明查看在售地点。
独享物理机
一个订单对应一台真实 Mac mini,CPU、内存与磁盘不与其他租用者共享。
非虚拟机
交付的是物理 Mac 的使用权限,不是在共享宿主机上划分出的虚拟实例。
VNC
用于访问 macOS 图形桌面的远程连接方式,适合需要界面操作的开发与调试任务。
SSH 密钥
由公钥和私钥组成的身份凭据。提交公钥用于授权;私钥由你自行保管。
self-hosted runner
注册到 CI 平台、在所租 Mac 上执行构建任务的运行程序。任务权限取决于运行它的系统账户。
Thunderbolt 5 并联
方案提供的可选扩展项,按每台设备计费。配置与适用工作负载可在方案页核对。
租期
下单时选择的按天、周、月或季计费周期。各周期分别报价,从交付时刻开始计算。
03 / 计费与续租

以交付时刻作为租期起点

下单时选定机型、节点、租期和附加项,并按所选周期一次付清。订单中的交付时间与到期时间应以控制台记录为准;不要用付款时间推算可使用时长。

01核对订单

付款前检查机型、节点及按天、周、月或季选择的周期。实际可用性以控制台实时返回为准。

02查看到期提醒

交付后在控制台查看租期记录和到期信息;提醒只能辅助安排工作,不应替代自己的备份计划。

03续租或升档

需要继续使用时,从控制台订单进入续租流程。需要由 Commit 16 改用 Commit 24 时,先核对新配置及数据迁移安排,再按控制台提供的流程操作。

支付与结算

仅支持 USDT-TRC20,以及经 Stripe 处理的 Visa、Mastercard、Amex。所有报价和结算均以美元(USD)计;结账时实际可用的网关以控制台返回为准。具体机型及四种周期的价格请看方案与价格。

04 / 常见排障

先定位发生在哪一层

从实例状态、网络、系统会话到工程配置逐层排查。记录报错原文、发生时间和已尝试的步骤,能让后续工单更快进入问题本身。

VNC 已连接,但画面是黑色的

先确认控制台中的实例处于可连接状态;断开后重新建立图形会话,并尝试降低客户端分辨率。若 SSH 可用,可检查系统是否仍能响应命令。提交工单时附上客户端提示、连接发生时间及 SSH 是否可用,不要附上连接密码。

SSH 一直超时,没有出现身份验证提示

超时通常先于密钥验证发生。核对控制台给出的地址和端口、实例状态,以及本地网络是否允许出站连接。换一个网络复测并记录结果;不要在未确认端口规则前反复更换私钥。

构建报磁盘空间不足

先用 df -h 确认剩余空间,再检查工程产物、DerivedData、归档文件和模型文件的占用。删除前确认文件归属并备份需要保留的产物。长期需要更多空间时,可在方案页核对 SSD 附加项。

钥匙串或签名证书导致归档失败

检查证书有效性、描述文件与 Bundle ID 是否匹配,以及运行构建的账户是否有权读取对应钥匙串。桌面登录账户与 CI runner 账户可能不同;先在同一账户下重现报错。工单可附经脱敏的错误日志,不要发送私钥或证书密码。

离开实例之前

到期前导出数据,不把保留期当备份

项目源码、构建产物、证书和模型文件应由你安排备份。租期结束后,实例访问会按服务条款处理;数据保留窗口及后续擦除规则以服务条款和订单信息为准。不要假设到期后仍能登录取回文件。

01导出工作成果

将代码提交到自己的仓库,并将尚未归档的 IPA、日志或模型结果复制到自己管理的存储位置。

02检查敏感材料

核对签名证书、密钥和 CI 变量的使用范围;必要时在项目侧轮换凭据,不把私钥留在共享构建日志里。

03确认下一步

还需使用同一实例就提前查看续租选项;准备结束时,核验备份可读取后再完成收尾。

仍未解决?

把现象和排查结果交给我们

已有订单请登录控制台提交工单,写明订单号、节点、问题发生时间和错误信息。尚未下单的连接或配置问题,可先通过联系页发送邮件咨询。