Installer Tautulli avec Docker

guide d'installation de Tautulli, une application tierce pour mesurer les statistiques et l'activité de votre serveur Plex

Installer Tautulli avec Docker
tautulli docker plex

Au sommaire :

  • 1-Qu'est-ce que Tautulli ?
  • 2-Prérequis
  • 3-Déploiement
  • 4-Configuration
  • 5-Exposer son instance avec Traefik

1-Qu'est-ce que Tautulli ?

Tautulli est une application tierce qui permet de mesurer les statistiques et l'activité de votre serveur Plex.

Vous allez pouvoir savoir entre autre sur vos utilisateurs :

  • Qu'est-ce qu'ils regardent ?
  • Qui regarde ?
  • Quand ils regardent ?
  • Où ils regardent ?
  • Comment ils regardent ?

Le tout présenté dans une belle interface web.

Cerise sur le gâteau, tout comme Plex, Tautulli est disponible su Android et iOS.

2-Prérequis

Pour déployer Plex, vous devez disposer d'une machine virtuelle fonctionnant sous Ubuntu Server.

Création de la machine virtuelle :

Virtualisation avec Proxmox VE : Si vous partez de zéro, suivez mon guide détaillé pour virtualiser Ubuntu sur Proxmox VE avec des réglages optimisés.

Virtualiser Ubuntu Server sur Proxmox VE
Guide d’installation de Ubuntu Server sur Proxmox VE avec mes meilleurs réglages.

Automatisation avec Cloud-Init : Pour gagner du temps lors de la configuration, utilisez un template Cloud-Init. Cela permet d'automatiser et de simplifier l'initialisation de vos machines virtuelles. Retrouvez les instructions dans ce guide.

Initialiser vos machines virtuelles avec Cloud-init sur Proxmox VE
Guide d’installation de Cloud-Init qui va vous permettre d’automatiser vos déploiements

Installation des outils nécessaires :

Docker et Docker Compose : Une fois la machine virtuelle prête, installez Docker et Docker Compose, indispensables pour gérer et orchestrer vos conteneurs. Ce guide vous accompagnera dans l'installation.

Installer Docker
Guide d’installation de Docker.

Exposition de l'application :

Proxy inverse avec Traefik : Pour exposer vos applications sur Internet de manière sécurisée, configurez un proxy inverse. Traefik est une solution recommandée. Suivez ce guide pour l'installation.

Installer Traefik avec Docker
Guide d’installation de Traefik.

Instance Plex nécessaire

Enfin, pour utiliser Tautulli, vous devrez disposer d'une instance Plex opérationnelle. Tautulli nécessite Plex pour surveiller et analyser l'activité des utilisateurs. Si vous n'avez pas encore installé Plex, vous trouverez un guide pour l'installer sous Docker ici.

Installer Plex avec Docker
Guide d’installation de Plex sous Docker.

3-Déploiement

Commencez par créer un dossier "docker" à la racine du dossier utilisateur"

mkdir -p ~/docker

Créez un fichier nommé "compose.yml"

touch ~/docker/compose.yml

Ouvrez le fichier "compose.yml" et copiez cette configuration.

networks:
# Docker Bridge Network
  default:
    driver: bridge

services:

  tautulli:
    image: lscr.io/linuxserver/tautulli:latest
    container_name: tautulli
    environment:
      PUID: ${PUID}
      PGID: ${PGID}
      TZ: ${TZ}
    ports:
      - 8181:8181
    volumes:
      - ${APPDATA}/tautulli:/config
    restart: unless-stopped

Pour les options communes :

  • network : en bridge (l'adresse IP sera celle de la machine virtuelle ou du conteneur LXC)
  • services : c'est là qu'il faudra ajouter les configurations de vos conteneurs
  • image : nom du registry suivi du nom de l'application (lscr.io/linuxserver/app_name)
  • container_name : le nom du conteneur, sinon Docker en choisira un de manière aléatoire (mieux vaut le nommer vous même)
  • environment : il y a les variables de base (PUID, PGID, TZ) qui correspondent à l'utilisateur, le groupe et le fuseau horaire.
  • volumes : variable ${APPDATA) (/home/user_name/appdata) suivi du nom de l'application (/app_name)
  • ports : le port d'écoute pour accéder à l'interface web (désactivé en local)
  • restart : unless-stopped par défaut. Le daemon de Docker redémarrera automatiquement le conteneur sauf si vous l'arretez, il faudra le démarrer manuellement

Téléchargez l'image et déployez le conteneur.

docker compose pull && docker compose create

Puis démarrez à la fois Tautulli et Plex (si vous avez suivi le tutoriel précédent, l'un ne va pas sans l'autre).

docker start tautulli plex

4-Configuration

Une fois les deux applications démarrés, tapez l'adresse IP de votre machine virtuelle suivi du numéro de port (8181).

Cliquez sur "Next".

Ajoutez un identifiant et un mot de passe. Pour ma part, je génére le tout via l'extension web de Bitwarden (voir partie 4 du tutoriel ci-dessous))

Installer Vaultwarden avec Docker
Guide d’installation de Vaultwarden sous Docker.

Authentifiez-vous avec le site Plex en cliquant sur "Sign In with Plex".

Cliquez sur "Connexion".

Une fois authentifié, cliquez sur "Next"

Indiquez l'adresse IP locale suivi du numéro de port de votre instance (ils sont sur le même réseau nul besoin d'indiquer le nom de domaine), cliquez sur "Verify" puis sur "Next".

Laissez par défaut (cela concerne le stockage des activités de streaming).

Tautulli vous avertira via des notifications sur l'activité de votre serveur Plex. Cliquez sur "Next".

On a pas de base de données à importer donc cliquez sur "Next".

Installation terminé.

Vous avez le choix entre vous authentifier avec Plex ou Tautulli. À vous de voir sachant que pour ma part, si je devais utiliser Plex comme serveur multimédia, je l'exposerai directement sur internet (via Traefik) avec un nom de domaine sans passer par les serveurs de Plex (débit limité comme expliqué dans mon tutoriel) et c'est pareil pour Tautulli, je n'utiliserai pas les services d'authentification de Plex, tout en local pour moi.

Si je joue un morceau sur Plex et que je retourne sur Tautulli, ce dernier va m'afficher toutes sortes d'informations comme :

  • La version de Plex que j'utilise (la version web)
  • Le navigateur utilisé (Brave, basé sur Chrome)
  • La qualité (Direct Play donc aucun transcodage, on est sur du stream au format FLAC d'origine)
  • Si c'est en local ou via internet
  • La bande passante utilisée
  • Le système utilisé (on vois le logo Ubuntu)
  • L'utilisateur qui écoute

Sur un film comme Akira, là on est plus sur du "Direct Play" mais "Direct Stream" avec un transcodage MKV vers MP4 et AC3 5.1 vers ACC Stereo.

Si je clique sur la jaquette, je vais pouvoir obtenir des statistiques d'écoute/visionnage sur mes contenus.

  • Libraries : liste les contenus disponible
  • Users : liste les utilisateurs
  • History : liste l'activité de votre serveur Plex
  • Graphs : affiche des graphiques de l'activité de votre serveur Plex

5-Exposer son instance avec Traefik

networks:
# default network
  default:
    driver: bridge
# Traefik network
  web:
    name: web
    driver: bridge

services:

  tautulli:
    image: lscr.io/linuxserver/tautulli:latest
    container_name: tautulli
    environment:
      PUID: ${PUID}
      PGID: ${PGID}
      TZ: ${TZ}
    volumes:
      - ${APPDATA}/tautulli:/config
    labels:
      - traefik.enable=true
      - traefik.http.routers.tautulli.entrypoints=websecure
      - traefik.http.routers.tautulli.rule=Host(`tautulli.<domain_name>`)
      - traefik.http.routers.tautulli.service=tautulli-svc
      - traefik.http.services.tautulli-svc.loadbalancer.server.port=8181
      - traefik.http.routers.tautulli.tls.certresolver=letsencrypt