itsweber-play

itsweber-play

Docker app from grtgbln's Repository

Overview

Self-hosted video platform

Runtime arguments

Web UI
http://[IP]:[PORT:3000]
Network
bridge
Shell
bash
Privileged
false

Template configuration

WebUI PortPorttcp

Einziger exponierter Port. Nginx multiplext intern zu Web/API/S3.

Target
3000
Default
3000
Value
3000
DataPathrw

Postgres, Redis, MinIO, Logs, Whisper-Modelle — alles unter /data. Regelmäßig sichern.

Target
/data
Default
/mnt/user/appdata/itsweber-play/data
Value
/mnt/user/appdata/itsweber-play/data
Public URLVariable

Die externe HTTPS-URL (ohne Trailing-Slash). Wird für Auth-Cookies, OG-Tags und Uploads gebraucht. Muss auf den Reverse-Proxy vor diesem Container zeigen.

Target
PUBLIC_URL
Default
https://play.example.com
Value
https://play.example.com
Site URL (public)Variable

Identisch zu Public URL — landet ins JS-Bundle.

Target
NEXT_PUBLIC_SITE_URL
Default
https://play.example.com
Value
https://play.example.com
API URL (public)Variable

Relativ lassen (/api), wenn ein Reverse-Proxy alles auf Port 3000 schickt. Nur ändern bei separatem API-Subdomain.

Target
NEXT_PUBLIC_API_URL
Default
/api
Value
/api
S3 URL (public)Variable

Relativ lassen (/s3). Wird für Thumbnails + HLS-Playlists verwendet.

Target
NEXT_PUBLIC_S3_PUBLIC_URL
Default
/s3
Value
/s3
S3 URL (server-side)Variable

MUSS identisch zu S3 URL (public) sein.

Target
S3_PUBLIC_URL
Default
/s3
Value
/s3
Auth SecretVariable

Erzeugen mit: openssl rand -hex 32 — Pflicht, sonst startet Better-Auth nicht.

Target
AUTH_SECRET
Postgres PasswordVariable

Erzeugen mit: openssl rand -hex 24 — wird auch als Part von DATABASE_URL gebraucht.

Target
POSTGRES_PASSWORD
MinIO Root PasswordVariable

Erzeugen mit: openssl rand -hex 24 — wird als S3-Secret für die API verwendet.

Target
MINIO_ROOT_PASSWORD
Initial Admin EmailVariable

Der erste User mit dieser Email wird beim Sign-up automatisch auf ADMIN gesetzt.

Target
INITIAL_ADMIN_EMAIL
Default
admin@example.com
Value
admin@example.com
Initial Admin HandleVariable

Handle (Benutzername ohne @) des Admin-Accounts.

Target
INITIAL_ADMIN_HANDLE
Default
admin
Value
admin
Initial Admin NameVariable

Anzeige-Name des Admin-Accounts.

Target
INITIAL_ADMIN_NAME
Default
Admin
Value
Admin
Initial Admin PasswordVariable

Starkes Passwort. Kann nach dem ersten Login über den Profil-Reset-Flow geändert werden.

Target
INITIAL_ADMIN_PASSWORD
Auth Cookie DomainVariable

Leer lassen für Single-Domain. Für SSO über Subdomains: .deine-domain.tld (mit führendem Punkt).

Target
AUTH_COOKIE_DOMAIN
App NameVariable

Sichtbarer Name im Header / Meta-Tags. Leer lassen = "Play".

Target
NEXT_PUBLIC_APP_NAME
Default
Play
Value
Play
Vendor NameVariable

Dein Firmen-/Creator-Name (optional, im Footer). Leer lassen für generisch.

Target
NEXT_PUBLIC_VENDOR_NAME
Vendor URLVariable

Link auf deine Firmen-/Creator-Homepage (optional).

Target
NEXT_PUBLIC_VENDOR_URL
Author NameVariable

Für HTML-Meta-Tag (optional).

Target
NEXT_PUBLIC_AUTHOR_NAME
Author URLVariable

Für HTML-Meta-Tag (optional).

Target
NEXT_PUBLIC_AUTHOR_URL
Product HomepageVariable

Externe Landing-Page (optional).

Target
NEXT_PUBLIC_PRODUCT_HOMEPAGE
NODE_ENVVariable
Default
production
Value
production
TimezoneVariable

TZ-Database-Name, z. B. Europe/Berlin, UTC.

Target
TZ
Default
Europe/Berlin
Value
Europe/Berlin
Postgres HostVariable

All-in-One: Postgres läuft im selben Container.

Target
POSTGRES_HOST
Default
127.0.0.1
Value
127.0.0.1
Postgres PortVariable
Target
POSTGRES_PORT
Default
5432
Value
5432
Postgres DBVariable
Target
POSTGRES_DB
Default
itsweber_play
Value
itsweber_play
Postgres UserVariable
Target
POSTGRES_USER
Default
play
Value
play
Database URLVariable

Muss dasselbe Passwort enthalten wie POSTGRES_PASSWORD oben. Bei Änderung beides anpassen.

Target
DATABASE_URL
Default
postgresql://play:REPLACE_WITH_POSTGRES_PASSWORD@127.0.0.1:5432/itsweber_play
Value
postgresql://play:REPLACE_WITH_POSTGRES_PASSWORD@127.0.0.1:5432/itsweber_play
Redis HostVariable
Target
REDIS_HOST
Default
127.0.0.1
Value
127.0.0.1
Redis PortVariable
Target
REDIS_PORT
Default
6379
Value
6379
MinIO Root UserVariable
Target
MINIO_ROOT_USER
Default
play-admin
Value
play-admin
S3 EndpointVariable

All-in-One: MinIO im selben Container.

Target
S3_ENDPOINT
Default
http://127.0.0.1:9000
Value
http://127.0.0.1:9000
S3 RegionVariable
Target
S3_REGION
Default
us-east-1
Value
us-east-1
S3 Access KeyVariable

Identisch zu MinIO Root User.

Target
S3_ACCESS_KEY
Default
play-admin
Value
play-admin
S3 Secret KeyVariable

Identisch zu MinIO Root Password (oben).

Target
S3_SECRET_KEY
Bucket VideosVariable
Target
S3_BUCKET_VIDEOS
Default
play-videos
Value
play-videos
Bucket ThumbsVariable
Target
S3_BUCKET_THUMBS
Default
play-thumbs
Value
play-thumbs
Bucket RawVariable
Target
S3_BUCKET_RAW
Default
play-raw
Value
play-raw
Bucket AssetsVariable
Target
S3_BUCKET_ASSETS
Default
play-assets
Value
play-assets
Max Upload Size (MB)Variable

Muss ≤ `client_max_body_size` im Reverse-Proxy sein. 8192 = 8 GB.

Target
MAX_UPLOAD_SIZE_MB
Default
8192
Value
8192
Transcode QualitiesVariable

Komma-getrennt. Weglassen = weniger Qualitätsstufen = schnellerer Transcode.

Target
TRANSCODE_QUALITIES
Default
1080p,720p,480p
Value
1080p,720p,480p
Transcode ConcurrencyVariable

Gleichzeitig verarbeitete Videos. Höher = CPU-intensiver.

Target
TRANSCODE_CONCURRENCY
Default
2
Value
2
Import ConcurrencyVariable

Gleichzeitige yt-dlp-Imports.

Target
IMPORT_CONCURRENCY
Default
2
Value
2
Auto-CaptionsVariable

1 = automatische Untertitel via Whisper.cpp generieren. Braucht Whisper-Modell im /data-Volume.

Target
AUTO_CAPTIONS_ENABLED
Default
0
Value
0
Rate Limit MaxVariable

Requests pro Fenster auf sensible Endpoints.

Target
RATE_LIMIT_MAX
Default
120
Value
120
Rate Limit Window (ms)Variable

Zeitfenster in Millisekunden. 60000 = 1 Minute.

Target
RATE_LIMIT_WINDOW_MS
Default
60000
Value
60000

Details

Repository
ghcr.io/itsweber-official/itsweber-play:main
Last Updated2026-05-31
First Seen2026-04-24

Run itsweber-play on Unraid.

itsweber-play is listed in Community Apps for Unraid OS. Explore Unraid to build a flexible home server, NAS, or homelab.