Tracearr ist ein Open-Source-Monitoring-Tool für Media-Server wie Plex, Jellyfin und Emby. Es dient als moderne Alternative zu Programmen wie Tautulli und legt unter anderem einen besonderen Fokus auf die Erkennung von unerlaubtem Account-Sharing.
Tracearr zeigt die aktiven Streams, ob die User Direct-Play oder Transcoding verwenden und gibt allgemein nützliche Infos zu den aktiven Streams.
Bitte unterstützt meine Arbeit
Portainer Stack erstellen
- Logge dich in dein Portainer Dashboard ein.
- Gehe auf Stacks und klicke oben rechts auf + Add stack.
- Gib dem Stack einen Namen (z. B. tracearr).
- Wähle bei Build-Methode Web editor.
Ordner in der Disk Station erstellen
- Erstelle in der Disk Station in deinem Docker Verzeichnis einen neuen Ordner namens „tracearr„
- Erstelle im tracearr Ordner 3 weitere Ordner:
„appdata„, „redis“ und „db„
Deine Struktur sollte nun also wie folgt aussehen:
Da es manchmal zu Problemen kommen kann, ist es empfohlen dem Ordner tracearr und allen Dateien und Unterorndern lese&schreibzugriff für „everyone“ zu geben.
Sollte also euer angelegter Account für tracearr (späterer Schritt) nach jedem neustart von Docker oder Portainer gelöscht werden, empfehle ich die Anpassung der Schreibberechtigungen wie oben genannt.
YAML Konfiguration
Kopiere das folgende YAML-Skript in den Editor. Es ist speziell auf die Struktur der Synology File Station optimiert:
Wichtig, überprüft ob euer Volume den Namen volume1 hat, ansonsten müsst ihr den Pfad im YAML anpassen
version: '3.8'
services:
tracearr:
image: ghcr.io/connorgallopo/tracearr:supervised
container_name: tracearr
# Erhöhter Shared Memory für die Datenbank-Stabilität
shm_size: 512mb
mem_limit: 4g
ports:
- "3000:3000"
environment:
- TZ=Europe/Berlin #hier anpassen
- LOG_LEVEL=info
- JWT_SECRET=DEIN_JWT_SECRET... #hier anpassen
- COOKIE_SECRET=DEIN_COOKIE_SECRET... #hier anpassen
# optional für die GeoIP Erkennung
- MAXMIND_LICENSE_KEY=DEIN_KEY_HIER... #hier anpassen
volumes:
# HOST-PFAD (DiskStation) : CONTAINER-PFAD (Intern)
- /volume1/docker/tracearr/db:/data/postgres
- /volume1/docker/tracearr/redis:/data/redis
- /volume1/docker/tracearr/appdata:/data/tracearr
ulimits:
nofile:
soft: 65536
hard: 65536
restart: unless-stopped
Die beiden Secrets musst du noch erstellen, diese sind 32-Byte Hex-String (64 Zeichen)
Das kannst du auf Webseiten wie generate-random.org machen, dort wählst du API-Keys und setzt die Länge auf 64.
Alle anderen Werte kannst du unverändert lassen. Klicke dann auf Generate Keys.
Du benötigst 2 verschiedene Keys also musst du 2 Keys generieren und die Keys dann oben im Script mit deinen ersetzten.
Alternativ kannst du auch den Cloudflare Generator nutzen oder andere Seiten/Tools die dir einen 32-Byte Hex-String mit 64 Zeichen generieren können.
OPTIONAL:
Damit tracearr auch sicher die Locations erkennen kann von wo aus eure User schauen ist es empfohlen, eine weitere Umgebungsvariable im oberen Script zu hinterlegen, das kann auch nachtraäglich noch gemacht werden.
Legt euch hierfür einen kostenlosen Account auf maxmind.com an und erstellt euch eine API Key, damit auf die GeoIP Datenbank zugegriffen werden kann.
Ersetzt dafür den Eintrag „DEIN_KEY_HIER“ bei der Variable „MAXMIND_LICENSE_KEY“ mit dem API Key den ihr über die Website erstellt habt.
Deployment
Sobald du die Werte für JWT_SECRET und COOKIE_SECRET mit deinen generierten Werten ersetzt hast, kannst du ganz unten im Portainer auf Deploy klicken.
Das dauert nun etwas, da das aktuelle Image nun direkt von Github heruntergeladen wird und im Anschluss mit deinen Einstellungen deployed wird.
Portainer zeigt dir an, wenn das Deployment abgeschlossen ist.
Danach siehst du auf deinem Synology Nas auch schon einen neuen Container, den eben erstellten Tracearr, es dauer ein wenig, bis dieser fertig konfiguriert und hochgefahren ist.
Anmelden auf Tracearr
Wenn dein neuer Container fertig hochgefahren ist, kannst du diesen unter http://deineNasIP:3000 erreichen
Für den Fall, dass du Plex benutzt, kannst du dich direkt mit deinem Plex-Account anmelden.
Für Emby oder Jellifin musst du dir erst einen Account erstellen, dieser ist lokal und wird direkt in deinem Docker Container erstellt, hier wird kein online Account erstellt.
Danach kannst du unter Settings -> Servers deinen Mediaserver hinzufügen (Plex, Jellyfin oder Emby)
Damit ist die Installation abgeschlossen und du kannst Tracearr nach deinen Wünschen konfigurieren.
Viel Spaß