Betrieb

Gemieteter Mac mini M4 16GB als GitHub Actions Self-Hosted-Runner: Labels, _work-Disk-Matrix, max. 2 parallele Jobs, 12 Smoke-Schritte

Gemieteter Mac mini M4 16GB als GitHub Actions Self-Hosted-Runner

Auf einem gemieteten Mac mini M4 mit 16GB Unified Memory ist ein GitHub Actions Self-Hosted-Runner keine grüne Workflow-Checkbox — sondern ein auditierbares Regelwerk: Labels, _work-Disk-Matrix, max. 2 parallele Jobs, Secret-Hygiene, 6 Regionen POP und 12 Smoke-Schritte. Abgleich mit GitHub-Doku und Mac-mini-Specs, plus Vergleich zu minutenbasierten GitHub-hosted Runnern.

Offenlegung: KvmZone ist der genannte Anbieter. Preise = KvmZone-Tarif; Runner-Verhalten = GitHub-Docs.

Preise · Hilfe

Warum gemieteter Mac mini M4 für Self-Hosted-Runner

macos-latest hosted passt für seltene Builds; iOS/macOS-Pipelines mit festen Labels (self-hosted,macOS,m4,kvmzone-hk) brauchen SSH + Runbook.

  • Secrets und _work getrennt
  • POP wählbar — HK/SG für actions/checkout
  • Neustarts auditierbarlaunchd + runsvc.sh

SSH zuerst

Runner-Labels

GitHub Labels:

LabelRolle
self-hostedPflicht
macOSOS-Familie
arm64Architektur
m4-16gbRAM-Stufe
kvmzone-hkPOP
lane-iosFastlane

_work Workspace-Disk-Matrix

SignalGelbAktion
APFS frei<20GBWorkflows einfrieren
_work/Job>12GBCache oder Lane split
2 Jobs_work >22GB16GB verletzt

Runner hinzufügen

Max. 2 parallele Jobs auf 16GB

  • 1 schwerer Job — exklusiv
  • 2 leichte Jobs — Swap < 15%: Swap-Playbook
  • ≥3 — zweiter gemieteter Host

Runner group Concurrency = 2

Secret-Hygiene

GitHub Secrets: Repo-Secrets für CI; PAT/p12 in /etc/runner/*.env 0400; kein echo; OIDC bevorzugen; eine Maschine = ein Trust Boundary.

6 Regionen POP

HK, Tokyo, Seoul, Singapore, US East, US West. RTT zu github.com vom gemieteten Host messen.

KnotenProfil
HongkongAPAC
Japan (Tokio)JP
KoreaFinTech
SingapurHub
US East/WestUS-CI

12 Smoke-Schritte

#GateOK
1–4SSH, Disk, config.sh, ServiceOK
5–8Workflow, checkout, npm ci, 2 leichte Jobsswap <15%
9–12Logs, Reboot, POP, FinanzenGitHub-Abrechnung

Miete vs GitHub-hosted

Hosted = Minuten. Miete = stabile iOS-Pipelines, feste POP. <26 Wochen → TCO

FAQ

3 Jobs auf 16GB?+
Nicht empfohlen — Concurrency 2 oder zweiter Host.
Günstiger als hosted?+
Hängt von Minuten ab; dichte macOS-CI oft planbarer.
_work extern?+
Ja mit RUNNER_WORK_DIRECTORY im Runbook.
VNC Pflicht?+
Nein — SSH vs VNC.

Weiterlesen

CI-Runner auf gemietetem Mac absichern

Sechs Regionen auf der Preisseite vergleichen; SSH aus der Hilfe; 12 Smoke-Schritte vor Produktion.