先比較任務,再決定是否租用

四種團隊,四種工作流程

你需要的或許不是另一套 CI 平台,而是一台不必放在辦公室值守的 Mac。將必須在 macOS 上執行的步驟交給獨享實體節點,程式碼、觸發規則與交付標準仍由你掌控。

以下是常見工作流程範例,並非客戶見證,也不代表實測效能。每個範例都會說明建議規格,以及哪些情況不適合選用。

整台實體 Mac mini 僅供一位客戶使用,非虛擬機;機房節點全年 365 天持續運作。

從下一次交付需求開始規劃

輸入什麼、在哪裡執行,最後交付什麼

先找出最接近你需求的任務,再查看卡片末尾的使用限制。獨享節點可避免與其他客戶爭用整台機器的資源,但無法自動排除你自家工作流程中的佇列、簽章錯誤或相依套件衝突。

情境範例 · 獨立開發者

在 Windows 上開發 Flutter,遠端產出 ipa

手邊只有 Windows,需要不定期打包專案,而非整天占用一台建置主機。

Port M4 Base · 按日計費

Apple Silicon M4 · 16GB 統一記憶體 · 256GB SSD

東京節點 · $19.7/天

  1. 提交程式碼

    在 Windows 上完成開發後,將確認過的提交推送至程式碼儲存庫。鎖定檔也要一併提交,避免遠端安裝到不同版本的相依套件。

  2. 產生封存檔

    由東京節點拉取程式碼、安裝專案所需的相依套件,並執行 flutter build ipa。簽章憑證、描述檔及其存取權限由你自行設定。

  3. 上傳至發佈平台

    確認版本號與建置號後,使用 fastlane pilot 上傳至 TestFlight;並將 ipa、記錄檔及對應的提交識別碼存入自己的產物儲存空間。

不適用情況

每月只打包一、兩次,而且已有可用的閒置 Mac,自行建置可能更省。如果需要同時執行多個模擬器或多項重型任務,也不建議從 16GB 方案開始。

前提:你仍須自行準備有效的開發者資格、簽章資料,以及用於 TestFlight 發佈的 App Store Connect API Key。遠端節點無法取代這些條件。

租用 Port M4 Base 試跑
情境範例 · 12 人 CI 團隊

合併時觸發建置,夜間集中執行 UI 測試

團隊每天多次合併程式碼,需要保留相依套件快取,也不想再處理辦公室的電源、網路與散熱問題。

Port M4 Plus · 按月計費

Apple Silicon M4 · 24GB 統一記憶體 · 512GB SSD

新加坡節點 · $201.6/月

  1. 註冊 runner

    在新加坡節點安裝 GitHub Actions self-hosted runner,使用標籤將 macOS 工作派送至該節點,並限制可觸發任務的儲存庫與分支。

  2. 區分優先順序

    main 合併時執行建置與基本檢查;發佈分支保留獨立任務;nightly 則執行耗時較長的模擬器 UI 測試。

  3. 隔離工作目錄

    依分支或任務分開工作目錄與 DerivedData。記錄記憶體峰值、磁碟用量增幅與排隊時間,再決定是否提高並行數或增加節點。

不適用情況

如果需要大量工作同時啟動,並在完成後立即釋放資源,共用隨選方案可能更有彈性。12 人只是情境背景,不代表一台節點能同時處理 12 個建置任務。

選擇區域時,應比較程式碼拉取、相依套件下載與產物上傳的路徑,不要只看團隊所在地。跨區域協作也建議先用自己的專案試跑。

租用 Port M4 Plus 接入 CI
情境範例 · AI 實驗

在同一個環境中執行模型推論與量化評測

需要固定軟體版本,反覆比較模型、量化方式與提示集,而不是每次都重新準備實驗環境。

Port M4 Pro · 先按日試用

Apple Silicon M4 Pro · 64GB 統一記憶體 · 2TB SSD

美國西部節點 · $61.4/天

  1. 確認相容性

    確認推論框架支援 Apple Silicon 與所需運算子。依模型權重、上下文長度與執行階段開銷估算記憶體,不要只看模型檔案大小。

  2. 固定評測輸入

    下載經授權使用的模型,記錄版本、量化參數與提示集。每次執行都使用相同輸入,並區分首次載入與後續推論所需時間。

  3. 保存實驗記錄

    匯出吞吐量、記憶體峰值與品質評測結果,並同步至自己的儲存空間。確認模型能順利執行後,再評估是否按月保留這套環境。

不適用情況

需要多張 GPU 訓練、相依於特定 CUDA 運算子,或模型執行所需記憶體超出可用預算時,Mac mini 並不適合。64GB 統一記憶體也不保證所有模型都能執行。

這是運算工作流程範例,不提供預設的模型速度或效果保證。試跑時請一併測量記憶體用量、首次載入時間與持續推論表現,避免只看單次結果。

租用 Port M4 Pro 測試模型
情境範例 · 影音工作流程

批次轉檔與匯出,逐批驗收成果

任務以離線處理為主,需要穩定保存素材、暫存檔與匯出佇列,不追求遠端即時剪輯的操作手感。

Port M4 Pro · 依任務週期租用

Apple Silicon M4 Pro · 64GB 統一記憶體 · 2TB SSD

機型 $61.4/天 · 可選配 +2TB SSD $5.2/天

  1. 傳輸與抽樣測試

    上傳經授權處理的素材,先用短片段確認編碼格式、色彩設定與匯出參數。規劃整批任務的交付時間時,也要將上傳時間計入。

  2. 安排匯出佇列

    使用指令碼或應用程式的批次處理功能安排任務。逐步增加並行數,觀察記憶體與磁碟讀寫狀況,避免多個匯出任務彼此拖慢。

  3. 回傳並清理

    抽查音畫同步、片長與檔案完整性;回傳完成影片與任務記錄。確認備份完成後再清除暫存檔,為下一批任務釋出空間。

不適用情況

需要本機周邊設備、現場拍攝或低延遲互動剪輯時,遠端節點無法取代工作站。如果素材上傳時間明顯長於處理所節省的時間,也應先沿用本機流程。

先估算內建 2TB SSD 中原始素材、快取與匯出檔案的最高用量;確實需要更多空間時,再加購 +2TB SSD,不必預設加購。

租用 Port M4 Pro 處理一批素材
依任務需求選擇計費方式

臨時交付先按日試跑,固定佇列再考慮月租

計費週期取決於節點需要保留多久,而非單次任務執行多久。以下是試跑建議起點,不保證並行處理能力或完成時間。

情境、建議方案與租用週期起點;所有金額均以 USD 計價。
任務情境 建議方案與規格 計費週期起點 優先驗證項目
獨立開發者的 Flutter 打包 Port M4 Base
Apple Silicon M4 · 16GB · 256GB SSD
按日 · $19.7/天 簽章是否成功、ipa 是否可發佈、磁碟空間是否足夠
團隊合併建置與 nightly 測試 Port M4 Plus
Apple Silicon M4 · 24GB · 512GB SSD
按月 · $201.6/月 記憶體峰值、自有任務佇列長度、快取命中率
模型推論與量化評測 Port M4 Pro
Apple Silicon M4 Pro · 64GB · 2TB SSD
先按日試用 · $61.4/天
可選常駐方案 $307.1/月
框架相容性、模型與上下文的記憶體用量、結果可重現性
批次轉檔與匯出 Port M4 Pro
Apple Silicon M4 Pro · 64GB · 2TB SSD
按日 · $61.4/天
需要時加購 +2TB SSD $5.2/天
素材傳輸時間、暫存空間峰值、成品驗收結果

三種機型均可選擇新加坡、日本(東京)、韓國(首爾)、香港或美國西部。實際供應情況以控制台即時顯示為準。付款僅支援 USDT-TRC20 與 Visa / Mastercard / Amex(透過 Stripe),實際可用付款方式以後端介面回傳為準。

安排同一節點的任務順序

獨享不代表無限並行,先安排好發佈任務

兩張排程板展示同一個獨享節點的不同調度策略。橫向方格代表先後階段,不代表實際分鐘數;色塊為工作流程示意,並非控制台截圖、實際執行記錄或效能保證。

一般合併日 先限制並行數,維持可重現的建置環境
main
相依套件與編譯基本測試保存產物
release/2.4
等主分支完成簽章與封存發佈
nightly
排入夜間佇列UI 測試

先從單一工作開始執行。分開工作目錄與快取鍵後,再依據專案實測結果決定是否提高並行數。

集中發佈日 先完成發佈封存,再處理不影響發佈的任務
release/2.4
固定提交版本並封存驗證簽章上傳並發佈
main
等待發佈任務恢復合併建置
nightly
延後執行非阻塞測試回歸測試

如果發佈與回歸測試必須同時完成,優先拆分至不同節點,而不是只增加同一台機器的執行器數量。

升級前,先釐清瓶頸在資源還是流程

如果 CPU、記憶體或儲存空間持續成為瓶頸,可以重新評估方案;若問題是任務遭鎖定、下載相依套件失敗或簽章步驟必須依序執行,就應先調整工作流程。節點全年持續運作,不代表產物已備份,也無法取代失敗重試。請一併保存提交識別碼、工具版本、任務記錄與產物路徑,發生異常時才能從明確步驟恢復。

用自己的專案做決定

找到適合你的情境了嗎?先完整跑過一次交付流程

在控制台選擇合適的方案、區域與計費週期,從拉取程式碼一路執行到驗收產物。先確認簽章、相依套件、記憶體與上傳路徑,再決定是否長期將節點接入工作流程。

按日試跑,$19.7/天起,以 USD 計價。若已有閒置 Mac,且任務量不大,也可以繼續自行建置,不必為了套用範例而改變流程。