← 개발 일기로

Xcode 버벅임 끝내기: 빌드를 클라우드 Mac mini M4로

현장 노트 · 2026.06.02 · 약 8분

울트라북 편집, 클라우드 Mac mini M4 Xcode 빌드

평소 16GB MacBook Air로 iOS를 만듭니다. Swift 편집은 괜찮은데 ⌘B 전체 빌드만 누르면 팬이 치고 SourceKit과 컴파일러가 디스크를 두고 싸웁니다. 커서가 반초 멈출 때는 사실 코딩이 안 됩니다. 맥북 프로를 사는 것보다 빌드가 내 유일한 노트북을 잡아먹지 않게 하는 게 먼저였습니다.

결국 남은 조합은 단순합니다. 울트라북은 코드 수정·Git, 클라우드 Mac mini M4는 xcodebuild 전용. VNC로 Xcode 하루 종일 쓰는 건 포기했습니다(태평양 횡단이면 로컬보다 더 답답함). 원격은 항상 켜 둔 빌드 머신입니다.

로컬 울트라북 편집 · Git · 가벼운 미리보기 VS Code / Xcode 편집 diff · commit · push 저전력 · 조용함 git / ssh 클라우드 Mac mini M4 xcodebuild · 테스트 · Archive Derived Data 캐시 서명 · 공증 · CI 24/7 · 메모리 대역 무거운 빌드는 클라우드, 코딩은 로컬
노트북은 편집·Git, Clean Build·테스트·Archive는 클라우드 M4

먼저 구분: 빌드인가, 인덱서인가

swift-frontend, XCBBuildService가 CPU를 먹으면 빌드 문제입니다. SourceKitService만 높으면 원격 빌드로는 한계가 있습니다. Derived Data 40GB를 지우니 로컬 증분 빌드가 돌아온 적도 있습니다. 원격 빌드는 무거운 일을 노트북에서 빼는 방법입니다.

역할 나누기

  • 로컬: 소스, git commit, MR diff, 가끔 Preview. 전체 ⌘U는 안 함.
  • 클라우드 M4: build / test / archive. 인증서·match는 이 키체인만.
  • 실기기: 옆에 있으면 로컬, 아니면 빌드 머신.

돌아가게 만들기

1. xcodebuild -version 로컬·원격 일치.2. Git만.3. Derived Data는 원격 ~/Cache/DerivedData 고정 (문서).

Makefile (발췌)
build-remote:
	git push origin HEAD
	ssh $(REMOTE) 'cd ~/workspace/$(REPO) && git pull --ff-only && 	  xcodebuild -scheme $(SCHEME) -derivedDataPath ~/Cache/DerivedData build'

TN2339 참고.

VNC는 이때만

p12, 키체인 허용, GUI 전용 Archive — 끝나면 끔. VNC로 Swift 작성은 비추.

3인 이상: 같은 M4에 CI

self-hosted runner (문서). runner 노트.

실수

  • Derived Data rsync → 인덱스 둘 다 깨짐.
  • Package.resolved 미커밋.
  • VNC 일상 개발.
  • 디스크 512GB 포화 → 장기 디스크.

스펙

M4 24GB 512GB. 고정 IP: 1대 1 IP.

대안

MBP, Xcode Cloud, 해킨토시 VM. Windows만 있으면 Windows+클라우드 Mac. APAC→캐나다 Release.

짧은 답

로컬 Run·원격 compile? VNC 아니면 어렵음. RTT? 빌드는 원격, 로그만 기다림.

빌드 머신 어디에?

제 빌드 머신은 Hashvps Mac mini M4. SSH 일상, 키체인만 VNC. 요금 참고.

Hashvps

전용 빌드 Mac 필요?

베어메탈 macOS, SSH/VNC, xcodebuild 보조 머신.

요금 보기
한정 혜택