docs
This commit is contained in:
@@ -14,9 +14,9 @@ Setze zuerst diese Pflichtwerte:
|
||||
|
||||
| Bereich | Wichtige Felder |
|
||||
|---|---|
|
||||
| Pfade | `raw_dir`, `movie_dir`, `log_dir` |
|
||||
| Tools | `makemkv_command`, `handbrake_command`, `mediainfo_command` |
|
||||
| Metadaten | `omdb_api_key`, optional `omdb_default_type` |
|
||||
| Pfade | `Raw Ausgabeordner`, `Film Ausgabeordner`, `Log Ordner` |
|
||||
| Tools | `MakeMKV Kommando`, `HandBrake Kommando`, `Mediainfo Kommando` |
|
||||
| Metadaten | `OMDb API Key`, optional `OMDb Typ` |
|
||||
|
||||
Danach `Änderungen speichern`.
|
||||
|
||||
@@ -30,22 +30,22 @@ Wenn du Blu-ray und DVD unterschiedlich behandeln willst, pflege die profilbezog
|
||||
|
||||
Typische Beispiele:
|
||||
|
||||
- `handbrake_preset_bluray` und `handbrake_preset_dvd`
|
||||
- `raw_dir_bluray` und `raw_dir_dvd`
|
||||
- `filename_template_bluray` und `filename_template_dvd`
|
||||
- `HandBrake Preset` (Blu-ray und DVD)
|
||||
- `Raw Ausgabeordner` (Blu-ray und DVD)
|
||||
- `Dateiname Template` (Blu-ray und DVD)
|
||||
|
||||
### 3. Queue und Monitoring festlegen
|
||||
|
||||
- `pipeline_max_parallel_jobs` für parallele Jobs
|
||||
- `hardware_monitoring_enabled` und Intervall für Live-Metriken im Dashboard
|
||||
- `Parallele Jobs` für den gleichzeitigen Durchsatz
|
||||
- `Hardware Monitoring aktiviert` + `Hardware Monitoring Intervall (ms)` für Live-Metriken im Dashboard
|
||||
|
||||
### 4. Optional: Push-Benachrichtigungen
|
||||
|
||||
In den Benachrichtigungsfeldern setzen:
|
||||
|
||||
- `pushover_enabled`
|
||||
- `pushover_token`
|
||||
- `pushover_user`
|
||||
- `PushOver aktiviert`
|
||||
- `PushOver Token`
|
||||
- `PushOver User`
|
||||
|
||||
Dann über `PushOver Test` direkt prüfen.
|
||||
|
||||
@@ -55,7 +55,7 @@ Dann über `PushOver Test` direkt prüfen.
|
||||
2. Disc einlegen
|
||||
3. `Analyse starten`
|
||||
4. Metadaten übernehmen
|
||||
5. Bis `READY_TO_ENCODE` laufen lassen
|
||||
5. Bis `Bereit zum Encodieren` laufen lassen
|
||||
|
||||
Wenn diese Schritte funktionieren, ist die Grundkonfiguration korrekt.
|
||||
|
||||
|
||||
@@ -2,13 +2,13 @@
|
||||
|
||||
Die empfohlene Installation läuft über `install.sh` und richtet Ripster vollständig ein.
|
||||
|
||||
Du musst dafür **keine Tools manuell vorinstallieren**. `install.sh` installiert die benötigten Abhängigkeiten automatisch (außer du überspringst sie mit `--no-*`).
|
||||
Du musst dafür **keine Tools manuell vorinstallieren**. Das Skript installiert die benötigten Abhängigkeiten automatisch, sofern sie nicht explizit mit `--no-*` übersprungen werden.
|
||||
|
||||
## Zielbild nach der Installation
|
||||
## Unterstützte Systeme und Anforderungen
|
||||
|
||||
- Ripster-Backend als `systemd`-Dienst
|
||||
- Frontend über nginx erreichbar
|
||||
- UI auf `http://<Server-IP>`
|
||||
- unterstützt laut Script: `debian`, `ubuntu`, `linuxmint`, `pop`
|
||||
- Ausführung als `root` (oder via `sudo`)
|
||||
- Internetzugang während der Installation
|
||||
|
||||
## Schritt-für-Schritt
|
||||
|
||||
@@ -24,9 +24,9 @@ wget -qO install.sh https://raw.githubusercontent.com/Mboehmlaender/ripster/main
|
||||
sudo bash install.sh
|
||||
```
|
||||
|
||||
Während der Installation wirst du nach dem HandBrake-Modus gefragt:
|
||||
Während der Installation wählst du den HandBrake-Modus:
|
||||
|
||||
- `1` Standard (`apt`)
|
||||
- `1` Standard (Paketinstallation)
|
||||
- `2` GPU/NVDEC (gebündeltes Binary)
|
||||
|
||||
### 3. Dienststatus prüfen
|
||||
@@ -37,21 +37,44 @@ sudo systemctl status ripster-backend
|
||||
|
||||
### 4. Weboberfläche öffnen
|
||||
|
||||
- Mit nginx: `http://<Server-IP>`
|
||||
- Ohne nginx (`--no-nginx`): API auf `http://<Server-IP>:3001/api`
|
||||
- mit nginx (Standard): `http://<Server-IP>`
|
||||
- ohne nginx (`--no-nginx`): API auf `http://<Server-IP>:3001/api`
|
||||
|
||||
## Was `install.sh` konkret einrichtet
|
||||
|
||||
1. prüft Betriebssystem, Root-Rechte und ermittelt Host/IP
|
||||
2. aktualisiert Paketquellen und installiert Basispakete (`curl`, `wget`, `git`, `mediainfo`, `udev` ...)
|
||||
3. installiert Node.js 20 (falls nicht passend vorhanden)
|
||||
4. installiert optional MakeMKV (Build aus den offiziellen Quellen)
|
||||
5. installiert optional HandBrakeCLI (Standard oder GPU/NVDEC)
|
||||
6. installiert optional nginx
|
||||
7. legt den Systembenutzer `ripster` an (ohne Login-Shell, ohne Home) und ergänzt Gruppen (`cdrom`, `optical`, `disk`, `video`, `render`, falls vorhanden)
|
||||
8. klont das Repository nach `/opt/ripster` (oder aktualisiert bei `--reinstall`)
|
||||
9. legt Verzeichnisse an:
|
||||
- `/opt/ripster/backend/data`
|
||||
- `/opt/ripster/backend/logs`
|
||||
- `/opt/ripster/backend/data/output/raw`
|
||||
- `/opt/ripster/backend/data/output/movies`
|
||||
- `/opt/ripster/backend/data/logs`
|
||||
10. installiert npm-Abhängigkeiten (Root, Backend, Frontend) und baut das Frontend
|
||||
11. erzeugt `backend/.env` (bei `--reinstall` bleibt bestehende `.env` erhalten)
|
||||
12. setzt Rechte/Besitz und erstellt bei sudo-Installation zusätzlich `~/.MakeMKV` für den aufrufenden Benutzer
|
||||
13. erzeugt und startet `ripster-backend.service`
|
||||
14. konfiguriert und startet nginx (falls nicht übersprungen)
|
||||
|
||||
## Wichtige Optionen
|
||||
|
||||
| Option | Zweck |
|
||||
|---|---|
|
||||
| `--branch <branch>` | anderen Branch installieren |
|
||||
| `--dir <pfad>` | Installationsverzeichnis ändern |
|
||||
| `--port <port>` | Backend-Port setzen |
|
||||
| `--host <hostname>` | Hostname/IP für nginx/CORS |
|
||||
| `--no-makemkv` | MakeMKV nicht installieren |
|
||||
| `--no-handbrake` | HandBrake nicht installieren |
|
||||
| `--no-nginx` | nginx-Konfiguration überspringen |
|
||||
| `--reinstall` | Update einer bestehenden Installation |
|
||||
| Option | Default laut Script | Zweck |
|
||||
|---|---|---|
|
||||
| `--branch <branch>` | `dev` | Branch für die Installation |
|
||||
| `--dir <pfad>` | `/opt/ripster` | Installationsverzeichnis |
|
||||
| `--user <benutzer>` | `ripster` | Service-Benutzer |
|
||||
| `--port <port>` | `3001` | Backend-Port |
|
||||
| `--host <hostname>` | automatisch ermittelte Host-IP | Hostname/IP für Webzugriff/CORS |
|
||||
| `--no-makemkv` | aus | MakeMKV-Installation überspringen |
|
||||
| `--no-handbrake` | aus | HandBrake-Installation überspringen |
|
||||
| `--no-nginx` | aus | nginx-Setup überspringen |
|
||||
| `--reinstall` | aus | bestehende Installation aktualisieren |
|
||||
|
||||
Beispiele:
|
||||
|
||||
@@ -76,9 +99,9 @@ sudo bash /opt/ripster/install.sh --reinstall
|
||||
|
||||
## Häufige Stolperstellen
|
||||
|
||||
- `Permission denied` am Laufwerk: Laufwerksrechte/Gruppen prüfen
|
||||
- Tools nicht gefunden: `makemkvcon`, `HandBrakeCLI`, `mediainfo` im `PATH` prüfen
|
||||
- UI nicht erreichbar: nginx-Status und Port/Firewall prüfen
|
||||
- Laufwerk nicht zugreifbar: Laufwerksrechte/Gruppen prüfen
|
||||
- CLI-Tool fehlt wegen `--no-*`: Tool nachinstallieren oder Befehl in Settings korrigieren
|
||||
- UI nicht erreichbar: nginx-Status und Firewall prüfen
|
||||
|
||||
## Danach weiter
|
||||
|
||||
|
||||
@@ -8,7 +8,7 @@ Für den normalen Betrieb sind nur wenige Punkte vorab nötig.
|
||||
|
||||
### Pflicht
|
||||
|
||||
- unterstütztes Linux-System (Debian/Ubuntu)
|
||||
- unterstütztes Linux-System (laut Script: Debian, Ubuntu, Linux Mint, Pop!_OS)
|
||||
- `root`-Rechte
|
||||
- Internetzugang während der Installation
|
||||
- optisches Laufwerk für Disc-Betrieb
|
||||
|
||||
@@ -6,7 +6,7 @@ Dieser Ablauf zeigt einen vollständigen Job aus Anwendersicht: von Disc-Erkennu
|
||||
|
||||
Erwartung:
|
||||
|
||||
- Status wechselt auf `DISC_DETECTED` bzw. `Medium erkannt`
|
||||
- Status wechselt auf `Medium erkannt`
|
||||
- im Bereich `Disk-Information` sind Laufwerksdaten sichtbar
|
||||
|
||||
Wenn nichts passiert: `Laufwerk neu lesen`.
|
||||
@@ -19,7 +19,7 @@ Aktion im Dashboard:
|
||||
|
||||
Erwartung:
|
||||
|
||||
- Status `ANALYZING`
|
||||
- Status `Analyse`
|
||||
- danach Metadaten-Dialog
|
||||
|
||||
## 3. Metadaten auswählen
|
||||
@@ -32,11 +32,11 @@ Im Dialog `Metadaten auswählen`:
|
||||
|
||||
## 4. Auf den nächsten Zustand reagieren
|
||||
|
||||
- Normalfall ohne vorhandenes RAW: `RIPPING` -> `MEDIAINFO_CHECK` -> `READY_TO_ENCODE`
|
||||
- bei vorhandenem RAW: direkt `MEDIAINFO_CHECK` -> `READY_TO_ENCODE`
|
||||
- bei unklarer Blu-ray-Playlist: `WAITING_FOR_USER_DECISION` (Playlist auswählen und übernehmen)
|
||||
- Normalfall ohne vorhandenes RAW: `Rippen` -> `Mediainfo-Pruefung` -> `Bereit zum Encodieren`
|
||||
- bei vorhandenem RAW: direkt `Mediainfo-Pruefung` -> `Bereit zum Encodieren`
|
||||
- bei unklarer Blu-ray-Playlist: `Warte auf Auswahl` (Playlist auswählen und übernehmen)
|
||||
|
||||
## 5. Review in `READY_TO_ENCODE`
|
||||
## 5. Review in `Bereit zum Encodieren`
|
||||
|
||||
Im aufgeklappten Job (`Pipeline-Status`):
|
||||
|
||||
@@ -49,7 +49,7 @@ Dann `Encoding starten`.
|
||||
|
||||
## 6. Encoding überwachen
|
||||
|
||||
Während `ENCODING`:
|
||||
Während `Encodieren`:
|
||||
|
||||
- Fortschritt + ETA im Dashboard
|
||||
- Live-Log im `Pipeline-Status`
|
||||
@@ -57,7 +57,7 @@ Während `ENCODING`:
|
||||
|
||||
## 7. Ergebnis prüfen
|
||||
|
||||
Bei `FINISHED`:
|
||||
Bei `Fertig`:
|
||||
|
||||
1. Seite `Historie` öffnen
|
||||
2. Job in Details öffnen
|
||||
|
||||
Reference in New Issue
Block a user