Dies ist meine erste Investition in neue Apple-Hardware seit 10 Jahren. Die Hauptgründe dafür sind der Übergang zu Apple Prozessoren und die Verwendung von APFS-Snapshots für macOS-Dienste.

  1. Übergang auf Apple Prozessoren
  2. Signed system volume security
  3. APFS für Time Machine Backups

Ich habe mich für 16 GB gemeinsamer Arbeitsspeicher und 256 GB SSD Speicher entschieden, da dieser Mac hauptsächlich zum Erstellen von linux/arm64 Docker Images verwendet wird.
ℹ️ Das ist in etwa der Preis für eine reservierte AWS EC2-Instanz vom Typ t4g.xlarge (12 Monate, alles vorausbezahlt).

Docker Desktop für Apple Silicon

Obwohl es sich immer noch um ein «tech preview» handelt, Rosetta 2 erfordert und angeblich viele bekannte Probleme auftreten*, laufen meine GitLab Runners einwandfrei und erledigen ihre Arbeit.

*Für weitere Informationen siehe https://docs.docker.com/docker-for-mac/apple-m1/.

Docker Einstellungen

Docker > Preferences > Resources

Änderungen gegenüber den Standardeinstellungen:

  1. Memory: Auf 16 GB einstellen
  2. Swap: Auf 4 GB einstellen

👉 CPUs auf 4 belassen, da der Mac mini M1 über vier «performance cores» verfügt.

Als «headless server» betreiben

Ich habe immer schon Apple Remote Desktop verwendet, um meine Macs zu verwalten. Die folgenden Einstellungen sind erforderlich, um den Zugriff zu ermöglichen:

  1. System Preferences > Security & Privacy: FileVault ausgeschaltet lassen
    System Preferences > Security & Privacy
  2. System Preferences > Sharing: Dienst «Remote Management» einschalten
    System Preferences > Sharing

❗ Wenn FileVault aktiviert ist, stellt der Mac beim Anmeldebildschirm keine Netzwerkverbindung her.

Docker Desktop starten

Um Docker Desktop zu starten, muss man sich über den Anmeldebildschirm von macOS anmelden. Zudem ist folgende Einstellung anzupassen, damit der Mac nicht in den Ruhezustand wechselt:

  • System Preferences > Energy Saver: «Prevent computer from sleeping automatically when the display is off» aktivieren
    System Preferences > Energy Saver

GitLab Runners aufsetzen

Für eitere Informationen zum Einrichten von GitLab Community Edition (CE) und GitLab Runners siehe b-data GitLab > Docker > Deployments > GitLab CE.

Leistung

Der Mac mini M1 ist leistungsstärker als eine AWS EC2-Instanz vom Typ t4g.xlarge.
😲 Wenn man bedenkt, dass Docker Desktop für Apple Silicon in einer virtuellen Maschine ausgeführt wird, welche das neue Virtualization Framework verwendet, ist die Leistung herausragend.