从下单到首个构建

把一台云端 Mac
接入你的开发流程

这份上手指南覆盖准备材料、选择两档独享物理机、确认四个节点、首次 SSH 登录与 Xcode 构建验证。按顺序执行,完成每一步再进入下一步。

2 档机型 4 个节点 SSH 与图形界面
新加坡 东京 首尔 香港
准备 账户、SSH 公钥、工具链要求
交付 以控制台确认时间为准
验收 连接、系统、构建三项检查
步骤 01 · 开始前检查

先把连接材料与工具链要求准备完整

下单前明确谁负责连接、构建和权限管理,可以减少设备交付后反复补充信息。以下五项都应有明确负责人。

控制台账户

确认下单人员能够登录控制台,并能查看订单、账单、节点和设备状态。技术负责人应知道由谁提交工单与执行续租。

完成标准:可进入账户页面

SSH 公钥

准备团队认可的 Ed25519 公钥,仅提交公钥内容。私钥保留在受控设备或密钥系统中,不通过邮件、工单或仓库传递。

完成标准:公钥指纹已登记

Xcode 版本

从项目、CI 配置和依赖中确认目标 Xcode 版本,同时记录最低 macOS 要求。不要只写“最新版”,应保留可核对的版本号。

完成标准:版本矩阵已确认

代码仓库权限

确认节点可以使用受限部署密钥或短期令牌读取所需仓库。先确定最小权限范围,再决定是否允许写入制品或提交状态。

完成标准:读取与回写边界清楚

远程桌面客户端

需要图形操作时,提前准备 VNC 或 macOS 屏幕共享客户端。自动化、诊断和文件操作优先使用 SSH,减少对图形会话的依赖。

完成标准:连接方式已选定
步骤 02 · 选择方案与节点

按并发量、工作集和租期选择两档配置

两档机型均为 Apple Silicon 物理节点与独享物理机,非虚拟机。新加坡、东京、首尔、香港均在目录内,实际可用性以下单时控制台实时返回为准。

基础构建

ZoomMini M4 Core

M4 · 16GB RAM · 256GB SSD

$20.7 每天
天 $20.7 周 $56 月 $103.7 季 $282.1

适合单条 iOS 构建流水线、日常 macOS 编译、依赖验证和持续运行的轻量 self-hosted runner。

选择依据:先测量一次干净构建的峰值内存与磁盘工作集,再为依赖缓存、日志和制品预留空间。

节点范围

四个节点都应纳入延迟与协作评估

节点选择应靠近主要开发者、代码源或自动化调度入口。不要只比较单次 ping,还要观察工作时段的稳定性与远程桌面体验。

  • 新加坡适合东南亚协作与构建接入
  • 东京适合日本及周边团队访问
  • 首尔适合韩国及东北亚工作流
  • 香港适合华南与东南亚协作
周期与附加项

在付款前核对完整配置

可按天、周、月或季租用。短期验证先按预计测试时长选择周期;稳定流水线应结合发布节奏和续租责任确认周期。

+1TB SSD
每天 $2.9 · 每周 $7.7 · 每月 $14.3 · 每季 $38.9
+2TB SSD
每天 $5.8 · 每周 $15.4 · 每月 $28.6 · 每季 $77.8
Thunderbolt 5 并联
每台每天 $1.9 · 每周 $5.2 · 每月 $9.6 · 每季 $26.1
步骤 03 · 完成支付

按订单中的 USD 明细完成结算

订单会分别列出基础机型、周期、节点和附加项。所有价格与结算统一使用美元(USD),提交支付前应由下单人员复核一次。

USDT-TRC20

按控制台返回的支付信息核对网络、金额和订单标识。转账前确认使用 TRC20 网络,提交后保留可用于对账的交易记录。

结算币种:USD

Visa / Mastercard / Amex

银行卡支付经 Stripe 处理。付款页面返回后,在控制台核对订单状态与账单金额,不以浏览器返回页作为设备交付依据。

结算币种:USD
01核对机型

档名、M4 芯片、内存和基础 SSD 应与所选方案一致。

02核对周期

确认天、周、月或季,不把测试周期误选为长期周期。

03核对节点

确认新加坡、东京、首尔或香港与连接计划一致。

04核对附加项

确认 SSD 扩展与 Thunderbolt 5 并联数量,再提交支付。

实际可用支付网关以控制台返回为准。支付完成不等于设备已经可连接,应继续检查订单状态和交付信息。

步骤 04 · 读取交付信息

以控制台中的设备记录作为连接依据

设备状态变为可连接后,再读取地址、账户说明和租期。不要使用聊天记录、旧截图或其他订单中的连接信息。

交付记录

首次连接前必须核对的六个字段

每个字段都应来自同一笔订单。若节点、地址或租期与预期不一致,先停止连接并通过控制台提交工单。

设备状态
确认记录明确显示可连接,再开始 SSH 或图形会话。
节点
核对新加坡、东京、首尔或香港是否为下单时选择的节点。
连接地址
复制分配的主机地址与端口,避免手工输入造成字符错误。
账户说明
确认分配用户名、首次凭据处理方式和允许使用的连接协议。
租期开始
用于确认服务起算点,并与订单记录保持一致。
租期结束
用于安排续租、制品归档、数据迁出和权限回收。

状态尚未可连接

继续在控制台查看订单状态。交付时长以控制台确认时间为准,不要反复尝试尚未提供的连接地址。

查看控制台状态

字段需要核对

提交工单时附上订单标识、预期节点、当前设备状态和发现问题的时间,不附密码、私钥或完整支付凭据。

提交控制台工单
步骤 05 · 首次连接

先核对主机指纹,再读取系统信息

第一次 SSH 连接的重点不是立即安装依赖,而是确认目标地址、主机指纹、登录用户与硬件信息均属于当前订单。

first-connection · zsh
$ export ZOOMMINI_HOST=assigned-host
$ ssh-keyscan -t ed25519 "$ZOOMMINI_HOST" | ssh-keygen -lf -
256 SHA256:7qV3mL9kR2nF4cX8 assigned-host (ED25519)

$ ssh build@"$ZOOMMINI_HOST"
Last login: remote session
build@zoommini-node ~ %

$ sw_vers
ProductName:            macOS
ProductVersion:         15.2
BuildVersion:           24C101

$ system_profiler SPHardwareDataType
Hardware:
    Model Name: Mac mini
    Chip: Apple M4
    Memory: 16 GB

$ uname -m
arm64
01

从控制台复制连接地址

将分配地址写入临时环境变量或 SSH config,避免命令历史中混入错误地址。若使用非默认端口,同时记录端口参数。

02

独立核对主机指纹

把本地读取的 Ed25519 指纹与交付记录进行逐字符比较。指纹不一致时停止连接,不要直接接受变化后的记录。

03

确认系统与硬件

sw_vers 用于确认 macOS 版本,system_profiler 用于确认芯片与内存,uname -m 应返回 arm64

步骤 06 · 构建验证

用三条命令判断工具链能否进入流水线

先验证 Xcode 选择,再执行项目构建,最后运行自动化测试。每一步都保留退出码和关键日志,避免只凭界面判断成功。

检查 01 确认 Xcode 版本
$ xcodebuild -version
Xcode 16.2
Build version 16C5032a
成功判定

Xcode 版本和构建版本与项目矩阵一致,命令退出码为 0。

检查 02 执行项目构建
$ xcodebuild -scheme App build
Prepare packages
CompileSwiftSources normal arm64
Ld App normal arm64
** BUILD SUCCEEDED **
成功判定

输出末尾出现 BUILD SUCCEEDED,并且没有签名、依赖或磁盘空间错误。

检查 03 运行自动化测试
$ fastlane ios test
Resolving Swift Package Manager dependencies
Test Suite 'All tests' passed
Executed 48 tests, with 0 failures
fastlane.tools finished successfully
成功判定

测试数量符合预期、失败数为 0,fastlane 正常结束且进程退出码为 0。

版本不一致

先运行 xcode-select -p 查看当前开发者目录,再按团队版本矩阵切换,不要直接修改项目文件规避版本问题。

依赖解析失败

核对仓库权限、包管理器路径和网络访问范围。清理缓存前先保存错误日志,避免丢失最初的失败证据。

签名步骤失败

核对证书、描述文件与 runner 权限的加载方式。秘密信息应由受控密钥系统注入,不写入脚本和构建日志。

步骤 07 · 交付后加固

构建通过后,再把临时访问收敛为长期配置

验收成功只说明工具链可用。正式接入 CI/CD 前,还要完成凭据更新、公钥管理、权限回收和 runner 最小权限设置。

01

更新账户凭据

按交付说明更新需要更换的初始凭据。使用唯一且受控的密码,不与本地开发机、仓库或其他节点复用。

验证方式 退出当前会话后重新登录,确认旧凭据不再有效。
02

配置 SSH 公钥

为需要访问的人员和自动化身份分别配置公钥。不要让多人共享同一私钥,公钥备注应能追溯到具体用途。

验证方式 逐个测试授权密钥,并记录对应负责人和轮换计划。
03

移除无用访问权限

删除测试期间临时加入的公钥、仓库令牌、管理员权限和远程桌面授权。离组成员与停用 runner 的访问应立即回收。

验证方式 检查授权密钥、用户组、启动项和 runner 注册记录。
04

限制 CI runner 权限

让 runner 只读取必要仓库、执行规定脚本并写入指定制品位置。不要默认授予系统管理权限或跨项目令牌。

验证方式 用最小权限身份完成一次构建,并确认越权操作会被拒绝。
可投入使用

最终验收清单

以下五项同时满足后,再把节点加入正式调度:订单字段一致、SSH 指纹一致、系统规格一致、构建与测试退出码为 0、临时权限已经回收。

  • 节点与租期已记录
  • 主机指纹已核对
  • Xcode 版本已确认
  • 构建与测试已通过
  • 最小权限已生效

准备好接入第一条构建流水线

先选择机型、节点与周期。设备可连接后,按本页顺序完成指纹核对、系统检查、构建验证和权限加固。