Wähle einen Artikel
PeerTube auf VPS/vServer installieren
PeerTube auf VPS/vServer installieren

0. Überblick

1. PeerTube installieren

1.1 Einleitung

PeerTube ist eine feie Videoplattform. Der Unterschied zwischen PeerTube und anderen großen Videoplattformen ist, dass die Plattform das Peer-to-Peer Protokoll nutzt. Dies bedeutet, dass jeder, der ein Video schaut, gleichzeitig dieses Video anderen zur Verfügung stellt.

1.2 Infos zu yml Dateien

Bei yml Dateien ist es sehr wichtig, dass die Zeilen alle richtig eingerückt sind. Die Zeilen MÜSSEN immer mit der Leertaste eingerückt werden. Es dürfen KEINE Tabs enthalten sein. Du kannst den nachfolgenden Code immer online „überprüfen“ lassen. Die meisten Fehler entstehen nämlich durch die falsche Formatierung. Ein Dienst zum Überprüfen ist zum Beispiel: https://codebeautify.org/yaml-validator

1.3 Vorbereitung

Diese Anleitung basiert auf dem aktuellen Debian 11 Betriebssystem. PeerTube werden wir unter Docker realisieren. Dies ermöglicht uns später sehr schnelle Updates und eine schnelle Installation.

Um PeerTube neben anderen Diensten auf unserem Server betreiben zu können, nutzen wir hier den Reverse Proxy Traefik. Die Anleitung dazu findest du hier: https://www.dogado.de/vps/vserver-anwendungsfaelle/traefik-reverseproxy-auf-vserver-installieren

Diese Anleitung passt auf die obige Traefik Anleitung. Daher lässt sich diese Anleitung nur 1:1 nutzen, wenn du Traefik nach der obigen Anleitung installiert hat.

1.3.1 Verzeichnis anlegen

Zuerst legen wir uns ein Verzeichnis an, in welchem wir später alle Daten von PeerTube speichern wollen.

mkdir -p /opt/containers/peertube 

Den Pfad kannst du gerne anpassen. Dann kannst du diese Anleitung aber nicht mehr 1:1 nutzen.

1.3.2 Docker Compose Datei erstellen

Nun legen wir uns noch eine Docker Compose Datei an. Diese ist der „Bauplan“ für PeerTube. Dazu gibst du folgendes in der Konsole ein:

nano /opt/containers/peertube/docker-compose.yml 

Nun kopierst du folgenden Inhalt:

version: "3.3" 

 

services: 

 

  peertube: 

    image: chocobozzz/peertube:production-bullseye 

    networks: 

      - default 

      - proxy 

    env_file: 

      - .env 

    volumes: 

      - assets:/app/client/dist 

      - ./data:/data 

      - ./config:/config 

    depends_on: 

      - postgres 

      - redis 

    restart: unless-stopped 

    labels: 

      - "traefik.enable=true" 

      - "traefik.http.routers.peertube.entrypoints=http" 

      - "traefik.http.routers.peertube.rule=Host(`peertube.euredomain.de`)" 

      - "traefik.http.middlewares.peertube-https-redirect.redirectscheme.scheme=https" 

      - "traefik.http.routers.peertube.middlewares=peertube-https-redirect" 

      - "traefik.http.routers.peertube-secure.entrypoints=https" 

      - "traefik.http.routers.peertube-secure.rule=Host(`peertube.euredomain.de`)" 

      - "traefik.http.routers.peertube-secure.tls=true" 

      - "traefik.http.routers.peertube-secure.tls.certresolver=http" 

      - "traefik.http.routers.peertube-secure.service=peertube" 

      - "traefik.http.services.peertube.loadbalancer.server.port=9000" 

      - "traefik.docker.network=proxy" 

      - "traefik.http.routers.peertube-secure.middlewares=secHeaders@file" 

 

 

  postgres: 

    image: postgres:13-alpine 

    env_file: 

      - .env 

    volumes: 

      - ./db:/var/lib/postgresql/data 

    restart: unless-stopped 

    networks: 

      - default 

 

  redis: 

    image: redis:6-alpine 

    volumes: 

      - ./redis:/data 

    restart: unless-stopped 

    networks: 

      - default 

 

volumes: 

  assets: 

 

networks: 

  proxy: 

    external: true 

Nun müssen wir noch einiges anpassen.

1.3.3 Hostname anpassen

Zuerst musst du noch den Hostnamen anpassen, über welchen später PeerTube erreichbar sein soll.

Diese beiden Zeilen musst du dazu anpassen.

    - "traefik.http.routers.peertube.rule=Host(`peertube.euredomain.de`)" 

    - "traefik.http.routers.peertube-secure.rule=Host(`peertube.euredomain.de`)" 

In meinem Fall also:

    - "traefik.http.routers.peertube.rule=Host(`peertube.testbereich.net`)" 

    - "traefik.http.routers.peertube-secure.rule=Host(`peertube.testbereich.net`)" 

1.3.4 Konfi­gu­ra­ti­ons­datei erstellen

Nun erstellen wir uns die eigentliche Konfigurationsdatei von PeerTube. Dazu gibst du folgendes ein:

nano /opt/containers/peertube/.env 

Folgenden Code kopierst du nun in die Datei:

TZ="Europe/Berlin" 

PT_INITIAL_ROOT_PASSWORD=password 

PEERTUBE_ADMIN_EMAIL=admin@email.de 

PEERTUBE_WEBSERVER_HOSTNAME=peertube.euredomain.de 

 

POSTGRES_USER=peertube 

POSTGRES_PASSWORD=peertube 

POSTGRES_DB=peertube 

 

PEERTUBE_DB_USERNAME=peertube 

PEERTUBE_DB_PASSWORD=peertube 

PEERTUBE_DB_SSL=false 

PEERTUBE_DB_HOSTNAME=postgres 

 

PEERTUBE_TRUST_PROXY=["127.0.0.1", "loopback", "172.18.0.0/16"] 

 

#  E-mail configuration 

PEERTUBE_SMTP_USERNAME=name@euredomain.de 

PEERTUBE_SMTP_PASSWORD=password 

PEERTUBE_SMTP_HOSTNAME=mail.euredomain.de 

PEERTUBE_SMTP_PORT=587 

PEERTUBE_SMTP_FROM=name@euredomain.de 

PEERTUBE_SMTP_TLS=false 

PEERTUBE_SMTP_DISABLE_STARTTLS=false 

Jetzt müssen wir diese Konfiguration noch anpassen.

1.3.5 Admin Kennwort festlegen

Das Admin Kennwort legst du in folgender Zeile fest:

vorher:

PT_INITIAL_ROOT_PASSWORD=password 

Nachher:

PT_INITIAL_ROOT_PASSWORD=deinPasswort 

1.3.6 Admin-E-Mail-Adresse festlegen

Die E-Mail-Adresse des Admins legst du in folgender Zeile fest:

vorher:

PEERTUBE_ADMIN_EMAIL=admin@email.de 

nachher:

PEERTUBE_ADMIN_EMAIL=admin@testbereich.net 

1.3.7 Hostnamen festlegen

Den Hostnamen musst du entsprechend wie in Schritt 1.3.3 anpassen:

vorher:

PEERTUBE_WEBSERVER_HOSTNAME=peertube.euredomain.de 

nachher:

PEERTUBE_WEBSERVER_HOSTNAME=peertube.testbereich.net 

1.3.8 SMTP Einrichten (optional)

Wenn du möchtest, dass deine Benutzer eine E-Mail bekommen, wenn sie neue Nachrichten erhalten oder ihre Registrierung bestätigen müssen, dann muss du diese Einstellungen hier tätigen.

Wenn du PeerTube ohne diese Funktionen nutzen möchtest, dann kannst du diesen Schritt überspringen.

Meine E-Mail-Server-Einstellungen:

Nutzername: admin@testbereich.net

Passwort: dogado

Port: 587

SMTP Host: mail.testbereich.net

Mit diesen Einstellungen fülle ich jetzt meine Konfiguration aus. Du musst diese Einstellungen an deinen E-Mail Provider anpassen. Die genauen Daten bekommst du direkt von deinem E-Mail Provider (z.B. google oder gmx).

vorher:

PEERTUBE_SMTP_USERNAME=name@euredomain.de 

PEERTUBE_SMTP_PASSWORD=password 

PEERTUBE_SMTP_HOSTNAME=mail.euredomain.de 

PEERTUBE_SMTP_PORT=587 

PEERTUBE_SMTP_FROM=name@euredomain.de 

nachher:

PEERTUBE_SMTP_USERNAME= admin@testbereich.net 

PEERTUBE_SMTP_PASSWORD=dogado 

PEERTUBE_SMTP_HOSTNAME=mail.testbereich.net 

PEERTUBE_SMTP_PORT=587 

PEERTUBE_SMTP_FROM= admin@testbereich.net 

2. PeerTube starten

Nun kannst du PeerTube starten. Dazu gibst du folgendes ein:

docker compose -f /opt/containers/peertube/docker-compose.yml up -d 

Nach kurzer Zeit sollte PeerTube im Browser zur Verfügung stehen. Dazu gehst du auf die Domain, welche du in der Docker Compose Konfiguration eingegeben hast. Bei mir ist dies: https://peertube.testbereich.net

Jetzt solltest du folgendes sehen:
 

2.1 Anmelden als Administrator

Klicke nun auf den Button „Anmelden“ um dich als Administrator anzumelden.

Gib als Nutzername „root“ und dann dein Passwort ein, welches du in Schritt 1.3.5 vergeben hast.

Nun siehst du auf der linken Seite den Reiter „Administration“.

Nach einem Klick darauf, siehst du alle PeerTube Einstellungen.

2.2 Benutzern erlauben sich selbst zu registrieren

Wenn du möchtest, dass Benutzer sich selbst auf deiner PeerTube Homepage registrieren können, musst du dies aktivieren. Dazu gehst du in die Administration. Anschließend unter „Konfiguration“ und dann „Einfach“.

Nun scrollst du nach unten, bis du folgendes siehst:

Hier klickst du auf „Registrierung aktivieren“.

Der Zusatz „Registrierung erfordert eine Bestätigung der E-Mail-Adresse“ funktioniert nur, wenn du in Schritt 1.3.8 einen E-Mail-Server hinterlegt hast. Wenn du diese Funktion aktivierst, dann bekommt dein neuer Nutzer eine solche E-Mail.

Wichtig ist, dass du zum Speichern der Einstellungen den Button „Einstellungen aktualisieren“ ganz unten auf der Seite klicken musst.

Nun erscheint auf der Starseite ein neuer Button:

Nächster Artikel
Performancetests mittels Unixbench auf vServer/VPS durchführen
Weitere passende Themen