1.0.0 docs
This commit is contained in:
@@ -1,107 +1,117 @@
|
||||
# Installation
|
||||
|
||||
Die empfohlene Installation läuft über `install.sh` und richtet Ripster vollständig ein.
|
||||
Die empfohlene Installation startet immer über `setup.sh`. `setup.sh` lädt das passende `install.sh` aus dem gewünschten Branch und übergibt alle weiteren Parameter unverändert an den eigentlichen Installer.
|
||||
|
||||
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.
|
||||
Wichtig:
|
||||
|
||||
## Unterstützte Systeme und Anforderungen
|
||||
- Standard-Einstieg: `setup.sh`
|
||||
- kein `curl | bash`
|
||||
- du musst die Tools nicht manuell vorinstallieren, sofern du sie nicht bewusst mit `--no-*` auslässt
|
||||
|
||||
- unterstützt laut Script: `debian`, `ubuntu`, `linuxmint`, `pop`
|
||||
- Ausführung als `root` (oder via `sudo`)
|
||||
## Voraussetzungen
|
||||
|
||||
- unterstütztes Linux-System
|
||||
- Root-Rechte oder `sudo`
|
||||
- Internetzugang während der Installation
|
||||
|
||||
## Schritt-für-Schritt
|
||||
Der Installer erkennt aktuell:
|
||||
|
||||
### 1. Installationsskript herunterladen
|
||||
- Debian
|
||||
- Ubuntu
|
||||
- Linux Mint
|
||||
- Pop!_OS
|
||||
|
||||
## Standardinstallation
|
||||
|
||||
```bash
|
||||
wget -qO install.sh https://raw.githubusercontent.com/Mboehmlaender/ripster/main/install.sh
|
||||
wget -qO setup.sh https://raw.githubusercontent.com/Mboehmlaender/ripster/main/setup.sh
|
||||
bash setup.sh
|
||||
```
|
||||
|
||||
### 2. Installation ausführen
|
||||
Ohne `--branch` fragt `setup.sh` interaktiv nach dem gewünschten Branch.
|
||||
|
||||
Die typischen Branches sind:
|
||||
|
||||
- `main`: stabiles Release
|
||||
- `dev`: aktueller Entwicklungsstand
|
||||
|
||||
## Installation mit Branch oder Optionen
|
||||
|
||||
Beispiele:
|
||||
|
||||
```bash
|
||||
sudo bash install.sh
|
||||
bash setup.sh --branch main
|
||||
bash setup.sh --branch dev
|
||||
bash setup.sh --branch dev --dir /opt/ripster --user ripster --port 3001 --host 192.168.1.10
|
||||
```
|
||||
|
||||
Während der Installation wählst du den HandBrake-Modus:
|
||||
`setup.sh` wertet selbst nur `--branch` aus. Alles andere übernimmt `install.sh`.
|
||||
|
||||
- `1` Standard (Paketinstallation)
|
||||
- `2` GPU/NVDEC (gebündeltes Binary)
|
||||
## Wichtige Optionen von `install.sh`
|
||||
|
||||
### 3. Dienststatus prüfen
|
||||
| Option | Default | Zweck |
|
||||
|---|---|---|
|
||||
| `--branch <branch>` | `dev` | installiert genau diesen Git-Branch |
|
||||
| `--dir <pfad>` | `/opt/ripster` | Installationsverzeichnis |
|
||||
| `--user <benutzer>` | `ripster` | Systembenutzer für den Dienst |
|
||||
| `--port <port>` | `3001` | Backend-Port |
|
||||
| `--host <hostname|ip>` | automatisch ermittelte Host-IP | Hostname/IP für Webzugriff und CORS |
|
||||
| `--no-makemkv` | aus | MakeMKV nicht installieren |
|
||||
| `--no-handbrake` | aus | HandBrake nicht installieren |
|
||||
| `--no-nginx` | aus | nginx-Setup überspringen |
|
||||
| `--no-system-deps` | aus | Systemabhängigkeiten nicht nachinstallieren |
|
||||
| `--reinstall` | aus | bestehende Installation aktualisieren |
|
||||
|
||||
## Was der Installer einrichtet
|
||||
|
||||
Typischer Ablauf:
|
||||
|
||||
1. Betriebssystem, Root-Rechte und Host prüfen
|
||||
2. Systemabhängigkeiten installieren
|
||||
3. Node.js 20 sicherstellen
|
||||
4. optional MakeMKV installieren
|
||||
5. optional HandBrakeCLI installieren
|
||||
6. optional nginx konfigurieren
|
||||
7. Repository nach `--dir` klonen oder aktualisieren
|
||||
8. Backend-/Frontend-Abhängigkeiten installieren
|
||||
9. Frontend bauen
|
||||
10. `backend/.env` und Laufzeitverzeichnisse vorbereiten
|
||||
11. `ripster-backend.service` anlegen und starten
|
||||
|
||||
## Dienst prüfen
|
||||
|
||||
```bash
|
||||
sudo systemctl status ripster-backend
|
||||
```
|
||||
|
||||
### 4. Weboberfläche öffnen
|
||||
|
||||
- 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 | 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:
|
||||
Typische Aufrufe im Betrieb:
|
||||
|
||||
```bash
|
||||
sudo bash install.sh --branch dev
|
||||
sudo bash install.sh --port 8080 --host ripster.local
|
||||
sudo bash install.sh --reinstall
|
||||
sudo journalctl -u ripster-backend -f
|
||||
sudo systemctl restart ripster-backend
|
||||
```
|
||||
|
||||
## Betrieb im Alltag
|
||||
## Update einer bestehenden Installation
|
||||
|
||||
Standard:
|
||||
|
||||
```bash
|
||||
# Logs live ansehen
|
||||
sudo journalctl -u ripster-backend -f
|
||||
|
||||
# Dienst neu starten
|
||||
sudo systemctl restart ripster-backend
|
||||
|
||||
# Update aus bestehender Installation
|
||||
sudo bash /opt/ripster/install.sh --reinstall
|
||||
```
|
||||
|
||||
## Häufige Stolperstellen
|
||||
Wenn die Installation mit abweichenden Kernparametern eingerichtet wurde, dieselben Parameter wieder mitgeben:
|
||||
|
||||
- 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
|
||||
```bash
|
||||
sudo bash /opt/ripster/install.sh --reinstall --dir /opt/ripster --user ripster --port 3001 --host 192.168.1.10
|
||||
```
|
||||
|
||||
Alternativ kannst du auch erneut über `setup.sh` gehen:
|
||||
|
||||
```bash
|
||||
sudo bash /opt/ripster/setup.sh --reinstall
|
||||
```
|
||||
|
||||
`--reinstall` aktualisiert die Installation, behält aber die persistenten Daten der bestehenden Instanz.
|
||||
|
||||
## Danach weiter
|
||||
|
||||
|
||||
Reference in New Issue
Block a user