← 開発日記に戻る

Xcode でノートが熱くなるなら:ビルドはクラウド Mac mini M4 へ

軽量ノートで編集、データセンターの M4 Mac mini で Xcode ビルド
普段は軽いマシン、コンパイルはラック上の M4 Mac mini。

普段使っているのは軽いノートです。Swift の編集や Storyboard、チャットなら十分。でも Run を押すか、大きな PR がマージされてフルビルドが走ると、いつもの光景です:ファン全開、トラックパッドが熱い、Activity Monitor で swift-frontend が CPU を占有、補完がスライドショー。Derived Data 削除、Xcode 再起動、Indexing 終わりを祈る——やったことありますよね。気づいたのは、手元のマシンに全部載せなくていい、xcodebuild と長いインデックスと Archive を常時電源の Mac に任せればいい、ということです。

今の構成は 軽量ノート + クラウド専用 M4 Mac mini。ノートはコードと会議、ラックの Mac がコンパイル・シミュレータ・署名。Windows メインの人は Windows から Xcode する話 を参照。MacBook Pro を買うかは TCO 比較、CI は 自前 macOS Runner。以下は実際の運用メモです。

1)Xcode が重いのは、大抵マシンが何を噛んでいるか

SourceKit の全倉庫スキャン、Indexing のディスク I/O、Clean Build のリンカ、シミュレータの RAM——が重なる。軽量ノートは省電力で数分コンパイルするとクロックが落ちます。ビルド効率のドキュメント で 8 分→5 分にはできても、1 日に何度も Clean するならまだ足りません。

出張で Archive できるノートを背負うのもつらい。コンパイルをデータセンターの M4 Mac mini に移したら、ノートは「ターミナル + エディタ」に戻りました。

自分ルール: 手はローカル、筋肉はクラウド。

2)分担:ノートで書く、クラウドでビルド

  • ローカル: Git、Cursor/VS Code、デザイン。ビルドは SSH、ファンは静か。
  • クラウド M4 Mac mini: フル Xcode、Derived Data 固定、xcodebuild archive専用が重要——共有 Mac でディスクを奪われない。
  • CI(任意): self-hosted Runner、push してコーヒー、戻ったら PR が緑か赤。

リージョンは Git の場所 優先。共有 macOS VM は署名と性能で失敗——VM vs ベアメタル Mac mini と同じ結論です。

3)3 パターン——まず B から

モードローカルクラウド M4向き
A フルリモートSSH/VNC のみGUI・Sim・ビルド全部非 Mac ノート
B ハイブリッド(常用)編集・pushxcodebuild補完は手元、ファンは静か
C CI のみ日常は手元 XcodeRunner 24/7PR が多いチーム

一人なら B:昼に SwiftUI、夜 push、クラウドで Archive→TestFlight。Cursor なら Remote-SSH でターミナルだけクラウド向け。

4)クラウド Mac を足すか?

サインノート調整クラウド M4
Clean >5 分が毎日複数効果限定的ビルド移管
ファンが会議を壊す対症療法コンパイル外出し
新 Xcode、手元 macOS が古い買い替えクラウドイメージ更新
Sim で UI 2 時間/日手元 Mac も必要VNC か役割分担
機内オフライン手元でビルド必須クラウドは代替不可

迷ったら本番リポで Archive 時間を比較——一番正直です。

5)セットアップ手順

  1. GitHub/GitLab に近いリージョン。
  2. SSH で Xcode をプロジェクトと同版;リリースノート 確認。
  3. export DERIVED_DATA_PATH=~/DerivedData~/.zshrc に。
  4. git pull、Fastlane Match、必要なら VNC で信頼。
  5. ssh build@cloud-mac 'cd ~/app && xcodebuild -scheme App -destination generic/platform=iOS build'

自宅ギガより SSH 切断と IPA アップロードの安定性。初回フルビルド後は Derived Data が効いて速くなります。

6)ハマった点

ローカルとクラウドで Derived Data を二重管理しない。UI 調整はクラウド Sim の VNC、実機は手元+ IPA はクラウド。M4 なら SWIFT_EXEC_JOBS を少し上げる(メモリ注意)。Runner と VNC 同時は避ける——容量 参照。

7)第二のビルドマシンのレンタル料

リリース前は週額、CI は月額。料金TCO。リモートデスクトップ全般は こちら

8)よく聞かれること

遅い? 操作は遅延あり;10 分以上のビルドはクラウド M4 の方が速いことも。ハイブリッド推奨。

Windows のみ? 可能——参照

VPS との違い? 署名・CI は専用 Apple Silicon 実機

セキュリティ? 社内 Mac mini と同レベル:SSH 鍵、p12 を Git に載せない。

初 Archive? 慣れれば半日;ヘルプ もあり。

古い Mac は? 手元でフルビルドしなければ現役;コンパイルだけクラウドで足りる。

自分が本番で使っている構成(参考)

ビルド機は Nuvcloud の専用 M4 Mac mini(SSH/VNC、日/週/月)。共有 macOS VM ではなく、個人のリリース前や小チームの共有ビルド向け。

日額で実リポジトリの Archive を計測——料金・リージョン · 申し込み

LIMITED プランを見る