Arm Line M4
M4 / 16GB / 256GB
適合首次 Xcode 建置、單一 CI 建置工作與臨時 iOS 封裝。建議先用實際專案驗證相依項目安裝、快取大小與建置流程。
每天 $21.2
租用 Arm Line M4租用一台獨享 Apple Silicon 實體節點,逐項驗收連線、工具鏈與建置流程。先讓一個專案順利建置,再串接團隊 CI。
兩種機型、5 個節點,每天 $21.2 起。整台設備獨享,非虛擬機;交付狀態與實際可用性以控制台即時顯示為準。
純編譯與首次驗證可從 Arm Line M4 開始。模型推論或需要較大統一記憶體的工作,則選 Arm Grid M4 Pro。評估記憶體需求時,不要只看專案目錄大小,也要考量並行工作與工具鏈的資源占用。
M4 / 16GB / 256GB
適合首次 Xcode 建置、單一 CI 建置工作與臨時 iOS 封裝。建議先用實際專案驗證相依項目安裝、快取大小與建置流程。
每天 $21.2
租用 Arm Line M4M4 Pro / 64GB / 2TB
適合模型推論、較大的建置快取,以及記憶體占用較高的工作流程。是否能執行特定模型,仍須依量化方式、上下文長度與執行參數進行驗證。
每天 $59.8
租用 Arm Grid M4 Pro新加坡、日本(東京)、韓國(首爾)、香港、美國東部。使用互動式桌面時,可優先考量團隊所在地到節點的網路路徑;無人值守建置則還要考量程式碼擷取、相依項目下載與產物回傳。地理距離只能作為初步參考,不代表實測延遲。
首次租用可先選按天計費,用同一個專案跑完整流程,再決定是否改用較長租期。四種租期與加購項目的完整價格請見方案頁。
僅支援 USDT-TRC20 與 Visa / Mastercard / Amex(透過 Stripe),全部以美元(USD)結算。實際可用的付款閘道以後端介面回傳為準。
確認機型、租期、節點與加購項目。使用 USDT 轉帳時,必須選擇 TRC20 網路,並逐項核對付款頁面提供的收款資訊與金額;勿沿用舊訂單的付款資訊。
鏈上付款需要等待確認,入帳速度會隨網路狀況而異;信用卡付款則以付款結果及訂單狀態為準。頁面尚未更新時,請勿重複付款;付款成功也不代表節點已交付。
在控制台查看交付狀態。節點可用後,核對 IP、登入使用者名稱、初始密碼與連線埠。若付款憑證與訂單狀態不符,請提交支援單並附上訂單編號及交易雜湊或付款憑證。
請在本機終端機執行以下指令。依提示填入控制台實際顯示的位址、連接埠與使用者名稱,勿將文件中的範例當成連線憑證。
read -r -p "Node IP: " NODE_IP
read -r -p "SSH port: " SSH_PORT
read -r -p "Login user: " NODE_USER
ssh -p "$SSH_PORT" "$NODE_USER@$NODE_IP"
首次連線時會顯示主機指紋。請先透過可信管道核對,再接受指紋;如果已儲存的指紋有變動,應先確認是否曾重新安裝系統或更換節點,不要直接略過驗證。
whoami
hostname
passwd
passwd 請在雲端 Mac 的 SSH 工作階段中執行。依提示輸入舊密碼與新密碼,輸入時不會顯示字元。密碼勿與其他服務共用,也不要寫入建置記錄。
| 欄位 | 填入內容 | 確認方式 |
|---|---|---|
| 伺服器位址 | 控制台提供的節點 IP | 確認與目前訂單相符,勿填入本機電腦的位址。 |
| 連接埠 | 控制台提供的 VNC 連接埠 | 如果用戶端有獨立的連接埠欄位,請分別填寫;勿自行猜測連接埠。 |
| 驗證資訊 | 控制台提供的圖形連線憑證 | 勿假設 VNC 密碼永遠與 SSH 密碼相同。 |
| 初始顯示設定 | 先從較低解析度開始 | 先確認畫面與輸入操作正常,再依網路頻寬提高畫質。 |
macOS 也可使用系統內建的螢幕共享。變更登入密碼後,請依交付說明確認是否需要同步更新圖形連線驗證資訊。勿將 VNC 服務直接暴露於不受信任的網路。
請在雲端 Mac 上執行以下指令。先確認系統與現有工具,再安裝缺少的元件。不要為了照抄範例而覆寫團隊已固定的 Xcode、Ruby 或相依項目版本。
sw_vers
uname -m
df -h /
ls /Applications
xcode-select -p
xcodebuild -version
xcode-select 如果指向的是獨立命令列工具,不能據此判定完整 Xcode 已可使用。若尚未安裝完整 Xcode,請先準備團隊授權範圍內的安裝套件,解壓縮後放入 /Applications;磁碟空間也須足以容納解壓縮內容、相依項目與封存產物。
sudo xcode-select --switch /Applications/Xcode.app/Contents/Developer
sudo xcodebuild -license
sudo xcodebuild -runFirstLaunch
xcodebuild -version
xcodebuild -showsdks
上述範例假設應用程式名稱為 Xcode.app。如果同時安裝多個版本,請改用實際路徑;接受授權條款前,請先詳閱內容。若要避免變更其他工作的工具鏈,也可以在單次建置時設定 DEVELOPER_DIR 指向所需版本。
command -v brew
brew --version
ruby --version
bundle --version
如果尚未安裝 Homebrew,請依團隊審核過的流程安裝;不要貼上來源不明的遠端安裝指令碼。Apple Silicon 常見的安裝路徑為 /opt/homebrew,實際路徑請以指令輸出為準。若已安裝但目前工作階段找不到,可以載入其環境:
eval "$(/opt/homebrew/bin/brew shellenv)"
brew install ruby
export PATH="$(brew --prefix ruby)/bin:$PATH"
gem install bundler
bundle install
bundle exec fastlane --version
最後四個步驟請在專案目錄中執行,並假設程式碼儲存庫已有固定 Fastlane 相依項目的 Gemfile 與鎖定檔。若缺少這些檔案,請先由團隊決定相依項目版本並提交鎖定檔,再進行安裝。勿以管理員權限將大量建置相依項目安裝到系統 Ruby。
read -r -p "Workspace path: " WORKSPACE
read -r -p "Shared scheme: " SCHEME
xcodebuild -list -workspace "$WORKSPACE"
xcodebuild \
-workspace "$WORKSPACE" \
-scheme "$SCHEME" \
-destination 'generic/platform=iOS' \
-archivePath "$HOME/BuildArtifacts/FirstBuild.xcarchive" \
CODE_SIGNING_ALLOWED=NO \
archive
先進入專案目錄,安裝專案宣告的相依項目,並確認 scheme 已共用。只有使用 .xcodeproj 的專案才使用 -project 取代 -workspace。此指令用來驗證編譯與封存流程,不會產生可供散佈的已簽署套件,也不保證所有需要簽署的建置指令碼都能順利執行。
請依照使用的程式碼平台,選擇 GitHub Actions 或 GitLab Runner。先以一個可信任的分支驗證工作,確認服務使用者、環境變數與鑰匙圈存取正常,再交由正式工作流程執行。
在儲存庫或組織的 runner 設定中選擇 macOS 與 ARM64,依平台目前的指引下載套件、驗證並解壓縮至獨立目錄。請在解壓縮後的目錄中執行以下指令;註冊 URL 與短效 token 請從目前的設定頁面取得。
read -r -p "Repository or organization URL: " RUNNER_URL
read -r -s -p "Registration token: " RUNNER_TOKEN
printf '\n'
./config.sh \
--url "$RUNNER_URL" \
--token "$RUNNER_TOKEN" \
--labels armvnc,macos,arm64
unset RUNNER_TOKEN
./svc.sh install
./svc.sh start
./svc.sh status
在工作流程中使用 runs-on: [self-hosted, macOS, ARM64, armvnc],並核對平台顯示的實際標籤。使用者服務的啟動與登入工作階段有關;安裝後請確認重新登入及重新啟動後能否恢復運作。註冊成功不代表服務在任何狀態下都會執行工作。
先在專案或群組設定中建立 runner,取得驗證 token。設定好 Homebrew 後,可安裝 runner 並依互動提示完成註冊。服務會以目前使用者身分執行,建置檔案與憑證也應由該使用者管理。
brew install gitlab-runner
read -r -p "CI server URL: " CI_SERVER_URL
read -r -s -p "Runner authentication token: " RUNNER_TOKEN
printf '\n'
gitlab-runner register \
--url "$CI_SERVER_URL" \
--token "$RUNNER_TOKEN" \
--executor shell \
--description "ArmVNC macOS ARM64"
unset RUNNER_TOKEN
gitlab-runner install
gitlab-runner start
gitlab-runner status
gitlab-runner verify
在平台設定中設定標籤與受保護分支規則,並確保工作流程中的 tags 與 runner 標籤一致。使用者服務通常依賴登入工作階段;請依目前 runner 版本的說明檢查 LaunchAgent 與啟動行為,勿再用另一套服務管理方式重複啟動同一個執行個體。
whoami、xcode-select -p 與 xcodebuild -version,確認工作並非在另一套環境中執行。節點全年 365 天正常運作,但 CI 程序仍由你管理。登出、更新系統或重新啟動後,請確認 runner 服務、網路與簽署環境都已恢復;退租前請先移除平台上的註冊關係、撤銷憑證並回傳產物。
判斷一個概念是否重要,先看它會影響哪個操作步驟:資源歸屬、連線方式、工作執行,或多機協作。
將已驗證的 Xcode 版本、相依項目鎖定檔與建置指令寫入程式碼儲存庫。遇到問題時,先判斷是連線、工具鏈還是專案層面的問題,再提供精簡的重現資訊尋求協助。
從按天租用開始,先確認連線、相依項目與 archive。僅支援 USDT-TRC20 與 Visa / Mastercard / Amex(透過 Stripe),以 USD 結算。