Auch verfügbar in: EN English

Unraid-Installation

Inhalt

Community Apps (empfohlen)

Sobald das Template im Community-Apps-Store freigegeben ist, ist das Community-Apps-Plugin der einfachste Weg. Laut Repo ist der Eintrag eingereicht, aber noch nicht freigegeben. Bis dahin gilt die manuelle Template-Installation weiter unten.

  1. Die Unraid-Web-UI öffnen und den Tab Apps aufrufen.
  2. Nach ITSWEBER Play suchen.
  3. Auf der Karte von ITSWEBER Play Installieren klicken.
  4. Der Template-Editor öffnet sich. Folgende Felder konfigurieren:
Variable Standard Beschreibung
PUBLIC_URL https://play.example.com Öffentliche HTTPS-URL der Instanz ohne Slash am Ende. Muss auf den Reverse Proxy zeigen.
NEXT_PUBLIC_SITE_URL https://play.example.com Gleicher Wert wie PUBLIC_URL.
AUTH_SECRET (leer) Mit openssl rand -hex 32 erzeugen.
POSTGRES_PASSWORD (leer) Mit openssl rand -hex 24 erzeugen und denselben Wert in DATABASE_URL statt REPLACE_WITH_POSTGRES_PASSWORD eintragen.
MINIO_ROOT_PASSWORD (leer) Mit openssl rand -hex 24 erzeugen.
S3_SECRET_KEY (leer) Gleicher Wert wie MINIO_ROOT_PASSWORD.
INITIAL_ADMIN_EMAIL admin@example.com Belegt das Admin-Feld im Einrichtungsassistenten vor.
INITIAL_ADMIN_PASSWORD (leer) Im Template als Pflichtfeld markiert.
WebUI Port 3000 Einziger Port des Containers.
  1. Auf Übernehmen klicken. Unraid lädt das Image herunter und startet den Container.

Manuelle Template-Installation

Falls ITSWEBER Play im Community-Apps-Store noch nicht verfügbar sein sollte, kann das Template manuell installiert werden:

  1. itsweber-play.xml aus dem GitHub-Repository herunterladen.
  2. Die Datei nach /boot/config/plugins/dockerMan/templates-user/ auf dem Unraid-Server kopieren.
  3. Im Tab Docker → Container hinzufügen — das ITSWEBER-Play-Template erscheint nun in der Template-Auswahl.
  4. Die Konfiguration wie oben beschrieben vornehmen.

Datenpersistenz

Alle Anwendungsdaten (Datenbank, Videodateien, Thumbnails, Konfiguration) werden im Container unter /data gespeichert. Unraid mappt diesen Pfad standardmäßig auf die Appdata-Freigabe:

/mnt/user/appdata/itsweber-play/data

Diesen Ordner niemals löschen — er enthält die Postgres-Datenbank und den gesamten MinIO-Objektspeicher. Regelmäßige Backups werden empfohlen; dafür können die eingebauten Backup-Werkzeuge von Unraid oder das Skript scripts/backup-all-in-one.sh aus dem Repository genutzt werden. scripts/backup.sh ist für den Multi-Container-Stack gedacht.


Erster Start

Nach dem Start des Containers (bis zu etwa 90 Sekunden für die Initialisierung der internen Services einplanen):

  1. Im Browser zu http://[unraid-ip]:3000 navigieren.
  2. Der Einrichtungsassistent führt durch die Erstellung des Admin-Kontos und die grundlegende Instanzkonfiguration.

Aktualisieren

Das Template nutzt den Tag :main. Er wird bei jedem Push auf den main-Branch neu gebaut und ist damit der aktuelle Entwicklungsstand, kein getestetes Release.

  1. Im Unraid-Tab Docker den Container itsweber-play anklicken.
  2. Update suchen auswählen.
  3. Bei verfügbarem Update auf Aktualisieren klicken.

Der Container startet mit dem neuen Image neu. Prisma-Migrationen laufen automatisch beim Hochfahren — kein manueller Eingriff erforderlich.


Reverse Proxy

Für HTTPS und einen sauberen Domainnamen sollte ITSWEBER Play hinter einem Reverse Proxy betrieben werden.

Nginx Proxy Manager

Einen neuen Proxy-Host anlegen:

  • Domainname: play.example.com
  • Schema: http
  • Ziel-Hostname: [unraid-ip]
  • Ziel-Port: 3000
  • Häufige Exploits blockieren und Websockets-Unterstützung aktivieren
  • Im Tab SSL ein Let's-Encrypt-Zertifikat anfordern

PUBLIC_URL und NEXT_PUBLIC_SITE_URL im Container-Template auf https://play.example.com setzen und den Container neu starten. Die erlaubte Request-Größe am Proxy muss mindestens MAX_UPLOAD_SIZE_MB (Standard 8192) abdecken.

Traefik (Unraid Community Traefik Plugin)

Diese Labels über das Feld "Zusätzliche Parameter" zum Container hinzufügen:

--label traefik.enable=true
--label traefik.http.routers.play.rule=Host(`play.example.com`)
--label traefik.http.routers.play.entrypoints=websecure
--label traefik.http.routers.play.tls.certresolver=letsencrypt
--label traefik.http.services.play.loadbalancer.server.port=3000