Gemieteter Mac mini M4 16GB als GitHub Actions Self-Hosted-Runner: Labels, _work-Disk-Matrix, max. 2 parallele Jobs, 12 Smoke-Schritte
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.
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 auditierbar —
launchd+runsvc.sh
Runner-Labels
| Label | Rolle |
|---|---|
self-hosted | Pflicht |
macOS | OS-Familie |
arm64 | Architektur |
m4-16gb | RAM-Stufe |
kvmzone-hk | POP |
lane-ios | Fastlane |
_work Workspace-Disk-Matrix
| Signal | Gelb | Aktion |
|---|---|---|
| APFS frei | <20GB | Workflows einfrieren |
| _work/Job | >12GB | Cache oder Lane split |
| 2 Jobs | _work >22GB | 16GB verletzt |
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.
| Knoten | Profil |
|---|---|
| Hongkong | APAC |
| Japan (Tokio) | JP |
| Korea | FinTech |
| Singapur | Hub |
| US East/West | US-CI |
12 Smoke-Schritte
| # | Gate | OK |
|---|---|---|
| 1–4 | SSH, Disk, config.sh, Service | OK |
| 5–8 | Workflow, checkout, npm ci, 2 leichte Jobs | swap <15% |
| 9–12 | Logs, Reboot, POP, Finanzen | GitHub-Abrechnung |
Miete vs GitHub-hosted
Hosted = Minuten. Miete = stabile iOS-Pipelines, feste POP. <26 Wochen → TCO
FAQ
Weiterlesen
CI-Runner auf gemietetem Mac absichern
Sechs Regionen auf der Preisseite vergleichen; SSH aus der Hilfe; 12 Smoke-Schritte vor Produktion.