指南
以獨享 Mac mini 執行 Mac CI 叢集
團隊如何把 5 到 20 台獨享 Mac mini 當作 CI 叢集使用:每個專案各有 Runner,一個帳號,一張發票,有工程師回覆。
2026-09-20 更新
一台 Mac mini 足以應付一個團隊的 iOS 建置。一旦您有三個 App、兩個分支同時建置,再加上發布排程,就需要一個叢集,而叢集的架構決定 CI 是保持快速,還是變成人人抱怨的東西。
以下是團隊如何在 MacDuty 經營 5 到 20 台獨享 Mac。
從同時建置數量出發,而不是人數
唯一重要的數字,是最忙的那一小時內必須同時執行多少個建置。不是開發人員數,也不是儲存庫數,而是同時建置數。
適用於多數 iOS 團隊的大致規模:
| 情境 | 機器 |
|---|---|
| 一個 App、一個團隊、PR 建置 | 1 到 2 |
| 兩三個 App,PR 與每夜建置並行 | 3 到 5 |
| 發布排程、在裝置矩陣上跑 UI 測試 | 6 到 10 |
| 服務多個產品的接案公司或平台團隊 | 10 到 20 或更多 |
排隊時間就是訊號。如果尖峰時段建置要等上幾分鐘以上,就加一台機器。這比每位開發人員乾等的那一小時便宜。
每台機器一個 Runner,還是多個?
每台 Mac mini 的整台機器都歸您使用:沒有 hypervisor,沒有吵鬧的鄰居。因此有兩種可行的做法。
每台機器一個 Runner
最單純。一個建置獨占整顆 CPU、GPU 與記憶體。適合 Xcode 建置與 UI 測試,這類建置會吃掉您給它的每一個核心。
每台機器兩到三個 Runner
適用於工作量小且受 I/O 限制的作業:單元測試、lint、打包。在 32 GB 的 M4 或 M6 上,同時跑兩個輕量作業綽綽有餘。
兩者混用很常見:重型機器專門跑發布建置,輕量機器塞滿快速的作業。
依團隊與專案劃分叢集
為機器加上標籤,讓 pipeline 把作業分派過去。實用的劃分方式:
依專案
ios-app、sdk、internal-tools。每個儲存庫指向自己的標籤,因此一個產品的建置壞掉,絕不會卡住另一個。
依用途
pr 機器速度快且隨時待命,release 機器在每次簽署建置前都會清除。
依客戶
接案公司讓每個客戶擁有自己的機器,以及各自的登入資訊與憑證。沒有共用,帳號之間也就沒有東西會外洩。
全部在同一個 MacDuty 帳號下,月底一張發票。
維持叢集健康
在專案之間重新安裝,而不是從不重裝
一台建置了一年的 Mac 會累積多個 Xcode 版本、模擬器與快取。當您把一台機器轉給新專案時,請向支援要求乾淨地重新安裝。由於這會清除 Mac,我們只在您同意後才進行。
固定工具鏈版本
同一個 pool 中每台機器使用相同的 Xcode 版本,有計畫地升級。機器版本各自漂移的叢集,會產生在某個 Runner 上通過、在另一個上失敗的建置。
看排隊,不要看 CPU
建置機器的 CPU 圖表總是令人緊張,卻很少能據以行動。排隊等待時間才會告訴您何時該加硬體。
保留一台備用
有十台機器時,一台故障應該只是不便,而不是事故。
與編排式 Mac 雲端相比
編排平台在虛擬化的 macOS 之上加了一層 Kubernetes 式的排程,而您要為這一層付費。如果您需要大規模地為每個作業啟動臨時 VM,這確實有用。
二十台機器以下的團隊大多不需要。他們需要的是幾台快速的獨享 Mac,保持運作、快取保持熱度,每個月費用固定。獨享叢集就是這樣:固定價格的整台實體機器,建置快取留給下一個作業,而不是隨 VM 一起丟掉。
您還會得到發布前凌晨 2 點才看得出的差別:管理機櫃的人會回覆電子郵件。
建立叢集
告訴我們規模:幾台機器、哪些機型、需要安裝什麼。應您要求,我們會依您的 Xcode 版本、Runner agent、金鑰與憑證進行設定,並在過程中處理重新安裝與機群異動,每一項都經您同意。
今天有現貨
這些 Mac 現在就在機櫃中。挑一台,看看它包含什麼,下單時再建立帳號即可。
正在查看機櫃
屬於您自己的 Mac mini
選擇配置。如果架上沒有,請留下電子郵件,上架當天我們就寫信通知您。
按年:比按月付款至少便宜 19%
問題
- 一個 MacDuty 帳號可以使用多台 Mac mini 嗎?
- 可以。一個帳號可以擁有您需要的任意數量機器,一張發票,供您個人或您的每一家公司使用。
- iOS CI 需要幾台 Mac mini?
- 依尖峰時段的同時建置數量決定,而不是團隊人數。單一 App 用一到兩台,幾個 App 同時建置用三到五台,發布排程或接案公司用六到二十台。
- 一台 Mac mini 可以跑多個 CI Runner 嗎?
- 可以。整台機器完全歸您。重型 Xcode 建置每台機器一個 Runner;輕量、受 I/O 限制的作業,在 32 GB 的機器上可跑兩到三個。
- 不同團隊或客戶可以有各自的機器嗎?
- 可以。機器依專案或客戶加上標籤並分開,各有自己的登入資訊,全在同一個帳號與同一張發票下。
- 獨享 Mac 叢集比編排式 Mac 雲端便宜嗎?
- 對穩定的 CI 負載來說,是的:每台實體機器每月固定價格,沒有按小時計費,也不用為編排層付費。
下一步