Installer Jellyseer avec Docker

Tutoriel d'installation de Jellyseer sous Docker, une application qui va vous permettre de gérer les requêtes de contenus des utilisateurs de votre instance Plex ou Jellyfin.

Installer Jellyseer avec Docker
Jellyseer docker seedbox

Au sommaire :

  • 1-Qu'est-ce que Jellyseerr ?
  • 2-Prérequis
  • 3-Déploiement
  • 4-Configuration

1-Qu'est-ce que Jellyseerr ?

Jellyseerr est un fork de Overseer qui va permettre aux utilisateurs de votre instance (Plex, Emby et Jellyfin) d'effectuer des requêtes de films et séries.

Pour ma part, avec des collègues on s'est dis que ce serait cool de récupérer la plupart des films cultes (et aussi des nanars) des années 80/90 donc avec Jellyseerr, ils pourront chercher les films (ou séries) et m'envoyer des requêtes de contenus à télécharger.

En acceptant une requête, Jellyseerr va ajouter le film ou la série à Radarr/Sonarr et télécharger automatiquement le contenu souhaité.

2-Prérequis

Il vous faudra une machine virtuelle sous Ubuntu Server 22.04 LTS.

Voici le guide pour ceux qui veulent repartir de zéro.

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

Si vous voulez gagner du temps, utilisez un template cloud-init.

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

Ensuite, suivez ce guide pour installer Docker, Docker Compose et préparer vos variables d'environnement.

Installer Docker
Guide d’installation de Docker.

Il vous faudra également une instance Plex ou Jellyfin. Privilégiez Jellyfin qui est une solution libre et qui dispose de fonctionnalités payante si vous utilisez Plex ou Emby.

Installer Jellyfin avec Docker
Guide d’installation de Jellyfin sous Docker, une alternative à Plex.

Enfin, pour exposer l'application sur l'internet public et permettre aux utilisateurs de vous envoyer des requêtes de films et séries TV, il vous faudra déployer Traefik.

Installer Traefik avec Docker
Guide d’installation de Traefik.

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.

version: "3.9"

networks:
  t2_proxy:
    name: t2_proxy
    driver: bridge

services:

  jellyseerr:
    image: fallenbagel/jellyseerr:latest
    container_name: jellyseerr
    volumes:
      - ${APPDATA}/jellyseerr:/app/config
    environment:
      - PUID=${PUID}
      - PGID=${PGID}
      - TZ=${TZ}
    networks:
      - t2_proxy
#    ports:
#      - 5055:5055
    restart: unless-stopped
    labels:
      - traefik.enable=true
      - traefik.http.routers.jellyseerr.entrypoints=websecure
      - traefik.http.routers.jellyseerr.rule=Host(`<nom_de_domaine>`)
      - traefik.http.routers.jellyseerr.service=jellyseerr-svc
      - traefik.http.services.jellyseerr-svc.loadbalancer.server.port=5055
      - traefik.http.routers.jellyseerr.tls.certresolver=letsencrypt
  • version : 3.9
  • services : c'est là qu'il faudra ajouter les configuration de vos conteneurs
  • image : nom du registry suivi du nom de l'application et du tag "latest" (lscr.io/linuxserver/jellyseerr)
  • container_name : le nom du conteneur, sinon Docker en choisira un de manière aléatoire
  • environment : indiquez les variables de base des applications Linuxserver.io comme le PUID (utilisateur), le PGID (groupe) et la TZ (timezone)
  • 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’arrêtez, il faudra le démarrer manuellement

Enregistrez le fichier "compose.yml" et déployez le conteneur.

docker compose up -d

4-Configuration

Accédez à l'interface web puis choisissez la langue de votre choix en cliquant sur l'icône en haut à droite.

Authentifiez-vous en cliquant en cliquant sur "Sign In" si vous avez une instance Plex (Plex centralise tout les identifiants).

Si vous avez Emby ou Jellyfin, indiquez les informations suivantes :

  • Jellyfin URL : l'adresse web de votre instance Emby ou Jellyfin
  • Email Address : votre adresse mail
  • Username : l'identifiant de votre compte Emby ou Jellyfin
  • Password : Le mot de passe de votre compte Emby ou Jellyfin

Cliquez sur "Sync Librairies" et activez celles que vous souhaitez. Sur mon instance j'en est 3 :

  • Documentaires
  • Films
  • Collection (regroupement des films d'une même série)

Cliquez sur "Start Scan" vu que c'est la première fois que vous lancez Jellyseerr.

Normalement, il ne sera exécuté qu'une fois toutes les 24 heures. Jellyseerr vérifiera plus agressivement les ajouts récents de votre serveur Jellyfin. Si c'est la première fois que vous configurez Jellyseerr, un scan manuel complet de la bibliothèque est recommandé !

Cliquez sur "Continue".

Si vous avez suivi la partie 3 du guide, vous devriez avoir déployé les applications Radarr (films) et Sonarr (séries TV).

Ajoutez les informations suivantes :

  • Server Name : mettez respectivement Radarr et Sonarr
  • Server Name : l'adresse IP locale de votre machine virtuelle
  • API Key : la clé API que vous trouverez dans Settings/General/API Key

Cliquez sur "Test" et vous devriez avoir ce message.

Pour finaliser, indiquez les informations suivantes :

  • Quality Profile : HD-1080p
  • Root Folder : /movies pour Radarr et /tv pour Sonarr
  • Language Profile (uniquement Sonarr) : mettez "Deprecated" (option inutile)

N'oubliez pas de cocher "Default" puis cliquez sur "Finish Setup".

Tout en haut apparaîtront les contenus récemment ajoutés qui se trouvent sur votre instance Jellyfin (uniquement visible de l'administrateur) puis les contenus tendances, populaires, etc.

Option sympathique, si je clique sur un des films, j'ai juste cliquer sur "Play on jellyfin" pour le visionner sur Jellyfin.

Dans "Users", vous pouvez créer des utilisateurs locaux ou carrément importer les utilisateurs de votre instance Jellyfin.

Ensuite, l'utilisateur devra choisir un film ou une série (L'impasse, film culte des années 90 que je vous recommande VIVEMENT).

Il doit cliquer sur "Request".

Puis il pourra choisir le profil (HD-1080p par défaut) puis en cliquant sur "Request", le film sera ajouté immédiatement sur Radarr.

Pour l'exemple je vais effectuer la requête au nom de l'utilisateur, ce qui va automatiquement ajouter le film sur Radarr en mode "Monitoring" (téléchargement automatique).

Je retrouve le film dans les requêtes.

Et également sur Radarr où ce dernier va le télécharger automatiquement.

Par contre si c'est l'utilisateur qui en fait directement la demande, je le retrouve en liste d'approbation et personnellement ça m'arrange car j'ai juste besoin de savoir quels sont les contenus demandés par les utilisateurs, pour le reste je me débrouille.

Dans Settings/Services, on retrouve bien les deux instances Radarr et Sonarr (vous pouvez en ajouter d'autres).

Dans "Settings/Jellyfin", indiquez les informations suivantes :

  • Internal URL : l'adresse IP locale de votre instance suivi du numéro de port
  • External URL : l'adresse web de votre instance

Dans "Settings/Notifications", vous pouvez configurer le protocole SMTP.

Dans "Settings/Users", vous pouvez modifiez les droits des utilisateurs (la configuration par défaut me va très bien).

J'ai juste coché "Recently Added" pour que lorsque des nouveaux contenus apparaissent, les utilisateurs n'auront qu'à cliquer pour visualiser sur Jellyfin.

Option intéressante dans dans "Setting/General Settings", vous pouvez sélectionner la langue et la région de vos contenus.