본문으로 건너뛰기
← 블로그로 돌아가기

self-hosted macOS runner 설정 방법

내 Mac에 GitHub self-hosted runner를 먼저 등록하세요.

self-hosted macOS runner 설정 방법

이 글은 직접 Mac을 준비해 self-hosted runner를 등록하는 방법을 먼저 적습니다. 관리형 러너가 필요할 때만 아래에서 XenoCI를 짧게 소개합니다. 기준일(data_asof): 2026-10-01.

1. 내 Mac에 self-hosted runner 등록

  • 저장소 또는 조직 Settings → Actions → Runners → New self-hosted runner를 엽니다.
  • 운영체제는 macOS, 아키텍처는 Apple Silicon이면 ARM64를 고릅니다.
  • 안내에 따라 러너 패키지를 내려받아 폴더에 풉니다.
  • 같은 화면의 토큰으로 ./config.sh --url <저장소-또는-조직-URL> --token <토큰>을 실행해 등록합니다.
  • ./run.sh로 러너를 띄웁니다. Mac이 잠자기·로그아웃되면 잡이 안 받을 수 있으니 전원·로그인 상태를 유지합니다. 서비스로 상주시키려면 GitHub Docs의 “Configuring the self-hosted runner application as a service”를 따릅니다.
  • Xcode·시뮬레이터·서명 인증서·의존성은 그 Mac에 직접 설치·갱신합니다. 잡마다 디스크가 비워지지 않으므로 시크릿·산출물 잔존에 주의합니다.

2. 워크플로 runs-on 예시 (직접 등록)

러너에 실제로 붙은 라벨과 동일해야 합니다. Apple Silicon 기본 라벨을 쓰는 예입니다.

name: build
on: [push, workflow_dispatch]

jobs:
  ios:
    runs-on: [self-hosted, macOS, ARM64]
    steps:
      - uses: actions/checkout@v4
      - run: xcodebuild -scheme App -destination 'platform=iOS Simulator,name=iPhone 16' test

3. 직접 운영 vs 관리형 (사실 표)

속도 비교 수치는 쓰지 않습니다. 아래는 공개 문서와 rates.js에서 확인한 사실만 적습니다. 기준일: 2026-10-01.

항목직접 self-hosted (내 Mac)XenoCI (관리형)
하드웨어본인 Mac (상시 전원·네트워크)Apple Silicon M4, 4 vCPU · 7 GiB, 잡마다 새 VM
runs-onself-hosted (+ macOS·ARM64 등)xenoci-macos 하나
XcodeMac에 직접 설치·선택이미지에 설치됨. 워크플로에서 xcode-select / DEVELOPER_DIR
GitHub 분 과금self-hosted 분은 GitHub 미과금동일(셀프 호스팅으로 취급)
러너 요금GitHub 분 요금 없음(전기·Mac 비용은 본인)1크레딧 = M4 1분 = 100원, 초 단위, 최소 요금 없음
무료·구매 크레딧해당 없음매월 무료 100크레딧(이월 없음, GitHub 계정 ≥30일). 구매·증정 크레딧은 구매일로부터 1년 유효(이후 잔여 소멸)
GitHub 호스팅 참고 단가표준 macOS $0.062/분분당 정가 100원은 $0.062/분보다 비쌈

분 단가만 보면 XenoCI 정가 100원은 GitHub 호스팅 표준 macOS($0.062/분)보다 싸지 않습니다. 차이는 월 구독 없음, 구매일로부터 1년 쓰는 선불 크레딧, 매월 무료 100크레딧, 초 단위 과금, 잡마다 새 Apple Silicon M4 VM입니다. (docs·changelog 2026-09-30 정정·rates.js, data_asof 2026-10-01)

4. 관리형이 필요할 때: XenoCI 한 줄

Mac을 상시 켜 두기 어렵거나 잡마다 새 VM이 필요하면, GitHub에 XenoCI 앱을 설치하고 워크플로의 runs-on만 xenoci-macos로 바꿉니다. 연결 순서는 GitHub Actions 연동과 시작하기에 있습니다.

name: build
on: [push, workflow_dispatch]

jobs:
  ios:
    runs-on: xenoci-macos
    steps:
      - uses: actions/checkout@v4
      - run: xcodebuild -scheme App -destination 'platform=iOS Simulator,name=iPhone 16' test

5. 다음에 볼 문서

연동은 GitHub Actions 연동, 크레딧·격리는 시작하기, 이미지·Xcode는 러너 이미지 개요, 분 과금 비교는 GitHub Actions와 비교와 자주 묻는 질문에 있습니다.

자주 묻는 질문

self-hosted 러너 runs-on은 어떻게 쓰나요?

러너에 붙은 라벨과 맞춥니다. 기본으로 self-hosted·macOS·ARM64(Apple Silicon)가 붙는 경우가 많고, 등록 때 커스텀 라벨을 추가할 수도 있습니다. 예: runs-on: [self-hosted, macOS, ARM64]. (GitHub Docs, data_asof 2026-10-01)

self-hosted면 GitHub Actions 분이 무료인가요?

self-hosted 러너로 돌린 분은 GitHub가 과금하지 않습니다. 저장 공간 같은 다른 GitHub 요금은 GitHub 정책을 따릅니다. XenoCI도 셀프 호스팅 러너로 취급됩니다. (/faq·/compare/github-actions, data_asof 2026-10-01)

Mac을 직접 두지 않고 쓰려면?

관리형 선택지로 XenoCI를 쓸 수 있습니다. GitHub에 XenoCI 앱을 설치한 뒤 runs-on을 xenoci-macos로 바꿉니다. 라벨은 하나뿐이고, Xcode는 워크플로 안에서 xcode-select 또는 DEVELOPER_DIR로 고릅니다. (/docs/getting-started·러너 이미지, data_asof 2026-10-01)

더 알아보기

문서를 읽고 지금 바로 시작하세요.