Kapitel 13/Tutorial.md aktualisiert

This commit is contained in:
2025-08-28 07:06:25 +00:00
parent df2e6020e0
commit 58c2f0acf5

View File

@@ -216,117 +216,6 @@ Inhalt:
Mit dieser Einrichtung sind **SSHSchlüssel**, **Berechtigungen** und **Pfade** konsistent. `ssh-copy-id` aus Abschnitt 3 funktioniert dadurch ohne Fehlermeldungen und n8n kann die Skripte stabil starten.
## Abschnitt 2 Clipper-LXC einrichten (Basisdienste & Einstiegsskripte)
Damit der Benutzer `clipper` sauber funktioniert, legen wir ihn **immer mit Home-Verzeichnis und Shell** an. So können wir später SSH-Schlüssel ohne Fehler hinterlegen.
### Benutzer und Verzeichnisse
Als root:
```bash
adduser --home /home/clipper --shell /bin/bash clipper
```
Vergib ein Passwort und bestätige die Abfragen. Danach richte das Konfigurationsverzeichnis ein:
```bash
mkdir -p /etc/clipper
chown root:clipper /etc/clipper
chmod 750 /etc/clipper
```
### Pakete installieren
```bash
apt install -y ffmpeg jq python3 python3-venv curl unzip inotify-tools sudo
```
- **ffmpeg**: Kern für Analyse/Schnitt
- **jq**: JSON-Auswertung
- **python3/venv**: Virtuelle Umgebung für Analyse
- **inotify-tools**: Events
- **sudo**: für Rechteeskalation
### Konfiguration anlegen
```bash
nano /etc/clipper/clipper.env
```
Inhalt:
```
CLIPPER_IN=/srv/clipper/watch
CLIPPER_OUT=/srv/clipper/out
CLIPPER_TMP=/srv/clipper/temp
CLIPPER_LOG=/srv/clipper/logs/clipper.log
```
Rechte setzen:
```bash
chown root:clipper /etc/clipper/clipper.env
chmod 640 /etc/clipper/clipper.env
```
### Python-Umgebung vorbereiten
```bash
su - clipper
python3 -m venv /srv/clipper/.venv
source /srv/clipper/.venv/bin/activate
pip install --upgrade pip
pip install numpy opencv-python-headless
```
### Einstiegsskripte erstellen
**Analyse-Stub:**
```bash
nano /srv/clipper/bin/clipper-analyze
```
```bash
#!/usr/bin/env bash
set -euo pipefail
source /etc/clipper/clipper.env
IN="$1"
JOBID="${2:-manual}"
mkdir -p "$CLIPPER_TMP/$JOBID"
echo "$(date '+%F %T') [ANALYZE] job=$JOBID file=$IN" | tee -a "$CLIPPER_LOG"
OUT_JSON="$CLIPPER_TMP/$JOBID/candidates.json"
echo '[]' > "$OUT_JSON"
echo "$OUT_JSON"
```
**Schneid-Stub:**
```bash
nano /srv/clipper/bin/clipper-cut
```
```bash
#!/usr/bin/env bash
set -euo pipefail
source /etc/clipper/clipper.env
IN="$1"
RANGES_JSON="$2"
JOBID="${3:-manual}"
mkdir -p "$CLIPPER_OUT/$JOBID"
echo "$(date '+%F %T') [CUT] job=$JOBID file=$IN ranges=$RANGES_JSON" | tee -a "$CLIPPER_LOG"
exit 0
```
Rechte setzen:
```bash
chmod +x /srv/clipper/bin/clipper-*
chown -R clipper:clipper /srv/clipper/bin
```
### Logs und Rotation
```bash
nano /etc/logrotate.d/clipper
```
```
/srv/clipper/logs/*.log {
rotate 14
daily
missingok
notifempty
compress
delaycompress
copytruncate
}
```
---
## Abschnitt 3 n8n ↔ Twitch: VOD & Clips importieren, in Nextcloud ablegen, Clipper starten