docs: update Mac Mini docs with active runner status and correct SSH config

- Update runner setup guide to reflect completed installation status
- Simplify docs: runner is active, show maintenance commands instead of install steps
- Fix SSH config in server docs (user mana, local IP, add CI/CD section)

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
Till JS 2026-03-11 12:10:43 +01:00
parent 67843b6d72
commit 3308a78f3a
2 changed files with 54 additions and 64 deletions

View file

@ -1,12 +1,23 @@
# Mac Mini Setup: GitHub Actions Runner & SSH-Zugang
Diese Anleitung auf dem Mac Mini ausführen.
## Aktueller Status
| Komponente | Status | Details |
|-----------|--------|---------|
| SSH-Zugang | Aktiv | User `mana`, lokale IP `192.168.178.131` |
| GitHub Actions Runner | Aktiv | Name: `mac-mini`, Labels: `self-hosted, macOS, ARM64` |
| CD-Pipeline | Aktiv | `.github/workflows/cd-macmini.yml` |
| LaunchAgent | Installiert | `actions.runner.Memo-2023-manacore-monorepo.mac-mini` |
**Runner-Verzeichnis:** `/Users/mana/actions-runner/`
**Projekt-Verzeichnis:** `/Users/mana/projects/manacore-monorepo/`
**Runner-Logs:** `/Users/mana/Library/Logs/actions.runner.Memo-2023-manacore-monorepo.mac-mini/`
---
## Teil A: SSH-Zugang einrichten
## Teil A: SSH-Zugang
Damit von Entwicklungsrechnern (und Claude Code) direkt per SSH auf den Mac Mini zugegriffen werden kann.
SSH ist eingerichtet. Verbindung vom Entwicklungsrechner:
### A1. SSH-Dienst aktivieren (falls noch nicht aktiv)
@ -74,80 +85,43 @@ ssh mana-server "docker logs -f mana-matrix-web --tail 50"
## Teil B: GitHub Actions Self-Hosted Runner
### 1. Runner-Token holen
Der Runner ist installiert und läuft als LaunchAgent. Er startet automatisch bei Systemstart.
1. Gehe zu: https://github.com/Memo-2023/manacore-monorepo/settings/actions/runners/new
2. Wähle **macOS** und **ARM64**
3. Kopiere den Token aus dem `--token` Parameter (sieht so aus: `AXXXX...`)
### Manuelles Deployment auslösen
## 2. Runner installieren
- **Automatisch:** Push auf `main` → erkennt geänderte Services → baut & startet nur diese
- **Manuell:** https://github.com/Memo-2023/manacore-monorepo/actions/workflows/cd-macmini.yml → "Run workflow" → Service wählen
### Runner-Status prüfen
```bash
# Verzeichnis erstellen
mkdir -p ~/actions-runner && cd ~/actions-runner
# Auf dem Mac Mini
cd ~/actions-runner && ./svc.sh status
# Runner herunterladen (ARM64 macOS)
curl -o actions-runner.tar.gz -L https://github.com/actions/runner/releases/latest/download/actions-runner-osx-arm64-2.322.0.tar.gz
# Oder via GitHub API
gh api repos/Memo-2023/manacore-monorepo/actions/runners --jq '.runners[] | "\(.name): \(.status)"'
# Entpacken
tar xzf actions-runner.tar.gz
# Konfigurieren (Token von Schritt 1 einsetzen)
./config.sh --url https://github.com/Memo-2023/manacore-monorepo --token DEIN_TOKEN_HIER
# Bei den Prompts:
# Runner group: [Enter] (default)
# Runner name: mac-mini
# Labels: [Enter] (default: self-hosted,macOS,ARM64)
# Work folder: [Enter] (default: _work)
```
## 3. Als LaunchAgent einrichten (Autostart)
```bash
# Installiert den LaunchAgent automatisch
cd ~/actions-runner
./svc.sh install
# Starten
./svc.sh start
# Status prüfen
./svc.sh status
```
## 4. Prüfen ob es läuft
```bash
# Lokal prüfen
./svc.sh status
# Oder im Browser:
# Oder im Browser
# https://github.com/Memo-2023/manacore-monorepo/settings/actions/runners
# → Runner "mac-mini" sollte als "Idle" angezeigt werden
```
## 5. Docker-Zugriff sicherstellen
Der Runner braucht Zugriff auf Docker:
### Neuinstallation (falls nötig)
```bash
# Prüfen ob Docker läuft
docker info
# 1. Token holen
# https://github.com/Memo-2023/manacore-monorepo/settings/actions/runners/new
# Oder: gh api -X POST repos/Memo-2023/manacore-monorepo/actions/runners/registration-token --jq '.token'
# Prüfen ob docker compose funktioniert
docker compose version
# 2. Runner installieren
mkdir -p ~/actions-runner && cd ~/actions-runner
curl -o actions-runner.tar.gz -L https://github.com/actions/runner/releases/latest/download/actions-runner-osx-arm64-2.322.0.tar.gz
tar xzf actions-runner.tar.gz
./config.sh --url https://github.com/Memo-2023/manacore-monorepo --token DEIN_TOKEN --name mac-mini --unattended --replace
# Prüfen ob das Projekt-Verzeichnis existiert
ls ~/projects/manacore-monorepo/docker-compose.macmini.yml
# 3. Als Service starten
./svc.sh install && ./svc.sh start
```
## 6. Test-Deployment auslösen
Entweder:
- Push auf `main` machen (deployt automatisch geänderte Services)
- Oder manuell: https://github.com/Memo-2023/manacore-monorepo/actions/workflows/cd-macmini.yml → "Run workflow" → Service wählen
## Fehlerbehebung
### Runner ist offline

View file

@ -84,12 +84,18 @@ Cloudflare Tunnel (cloudflared)
ssh mana-server
```
Die SSH-Verbindung läuft über Cloudflare Access (konfiguriert in `~/.ssh/config`):
SSH-Config (`~/.ssh/config`):
```
# Lokales Netzwerk (direkt)
Host mana-server
HostName 192.168.178.131
User mana
# Über Cloudflare Tunnel (von extern)
Host mana-server-remote
HostName mac-mini.mana.how
User till
User mana
ProxyCommand /opt/homebrew/bin/cloudflared access ssh --hostname %h
```
@ -99,6 +105,16 @@ Host mana-server
cd ~/projects/manacore-monorepo
```
## CI/CD
Ein GitHub Actions Self-Hosted Runner läuft auf dem Mac Mini und deployt automatisch bei Push auf `main`.
- **Workflow:** `.github/workflows/cd-macmini.yml`
- **Runner:** `mac-mini` (self-hosted, macOS, ARM64)
- **Setup-Doku:** [MAC_MINI_RUNNER_SETUP.md](MAC_MINI_RUNNER_SETUP.md)
Manuelles Deployment: https://github.com/Memo-2023/manacore-monorepo/actions/workflows/cd-macmini.yml
## Wichtige Befehle
### Status & Monitoring