Installer Kyoo avec Docker
Kyoo

Installer Kyoo avec Docker

Table des matières

Fouillant Github je suis tombé sur Kyoo. En lisant le début de la description je vois:

The next-generation open-source media browser that redefines your streaming experience.

Le navigateur multimédia open source de nouvelle génération qui redéfinit votre expérience de streaming.

Cela a piqué ma curiosité. De plus comme il se propose comme alternative à Plex et Jellyfin, je ne pouvais que le tester.

Kyoo stands out as a powerful alternative to Plex and Jellyfin.

Autrement dit, une alternative puissante à Plex et Jellyfin.

Ce qui m'a vite bluffé c'est le transcodage. Souvent je transpire avec Jellyfin pour le configurer correctement. D'ailleurs, je lis tout sans transcodage finalement. 😆

Ici, il n'y a rien à faire et c'est bigrement efficace et rapide pour sauter d'une définition à une autre. C'est très réussi.

De plus j'ai vu qu'il y avait une application Android, mais finalement tout est déjà responsive, de base.

L'interface est bien finie. En tout cas à mon humble avis.

Ah, j'allais oublier, nul besoin de classer ou renommer vos fichiers ou dossiers. Il s'occupe de tout au niveau de l'Ui. Puissant non? Il détecte automatiquement le(s) fichier(s) ajouté(s) ou supprimé(s).

Pour des raisons évidentes de droits d'auteurs, je vais vous renvoyer vers la démo Kyoo et non pas de mes tests persos.

Démo Kyoo:

Kyoo
A portable and vast media library solution.

Bienvenue dans Kyoo, le navigateur multimédia open source de nouvelle génération qui redéfinit votre expérience de streaming. Conçu à partir de zéro, Kyoo se distingue comme une alternative puissante à Plex et Jellyfin. Libérez tout le potentiel de votre médiathèque avec des fonctionnalités de pointe et un engagement à être gratuit et open source.

⚡Caractéristiques

  • Transcodage dynamique : transcodez vos médias dans n'importe quelle qualité, modifiez-les à la volée avec la qualité automatique et parcourez votre vidéo sans effort, sans attendre le transcodeur.
  • Historique des vidéos regardées automatiquement : profitez de l'historique des vidéos regardées automatiquement en continuant à regarder, ce qui vous permet de reprendre rapidement votre série ou de découvrir de nouveaux épisodes.
  • Récupération intelligente des métadonnées : faites l'expérience d'une récupération intelligente des métadonnées, même pour les fichiers aux noms étranges, grâce à la puissance de deviner et de themovedb. Il utilise même le thème pour une gestion améliorée des anime.
  • Accès multiplateforme : accédez à Kyoo sur les clients Android et Web, en vous assurant que vos médias sont à portée de main où que vous alliez.
  • Recherche optimisée par Meilisearch : utilisez notre système de recherche avancé et résistant aux fautes de frappe, optimisé par Meilisearch, pour des résultats ultra-rapides.
  • Prise en charge du nettoyage rapide : parcourez vos médias sans effort grâce à la prise en charge du nettoyage rapide, améliorant ainsi votre contrôle sur la lecture.
  • Téléchargement et assistance hors ligne : profitez de la liberté de télécharger et de regarder hors ligne, avec l'historique des vidéos regardées mis à jour de manière transparente lorsque vous vous reconnectez.
  • Prise en charge améliorée des sous-titres : Kyoo va au-delà des bases avec une prise en charge améliorée des sous-titres, notamment les formats SSA/ASS et les polices personnalisables.
  • Disponible en anglais et en français!

L'installation

Afin que Kyoo puisse correctement identifier vos médias et récupérer les images etc, il faut une clé API de themoviedb.org. Je vous explique comment.

Créez-vous un compte:

Sign Up — The Movie Database (TMDB)
The Movie Database (TMDB) is a popular, user editable database for movies and TV shows.

Remplissez les informations demandées:

Vérifiez votre compte par le mail qu'ils vont vous envoyer:

Connectez-vous à votre compte:

Rendez-vous dans la partie API:

https://www.themoviedb.org/settings/api/request

Cliquez sur Developer:

Rendez-vous dans le fond de la page pour accepter les conditions:

Pour le premier volet, remplissez comme ceci:

Lorsque j'ai créé le compte, j'ai remarqué qu'il fallait dans Résumé de l'application, mettre plus qu'un simple mot, donc je vous invite à copier/coller la description de Kyoo:

Welcome to Kyoo, the next-generation open-source media browser that redefines your streaming experience. Designed from the ground up, Kyoo stands out as a powerful alternative to Plex and Jellyfin. Unleash the full potential of your media library with cutting-edge features and a commitment to being free and open-source.

Pour le second volet, j'ai mis vraiment n'importe quoi comme infos, une fois que c'est fait, validez et vous verrez votre clé API qu'il faudra noter et non pas le Jeton d'accès en lecture à l'API:

Copiez-la pour le point 6, ci-dessous.


Maintenant que vous avez votre clé API, en avant pour la suite!

  1. Toujours suivant la structure des tutoriels présents sur belginux, on va créer le dossier kyoo dans /srv/appdata:
sudo mkdir kyoo
  1. On se rend dans le dossier:
cd kyoo
  1. On va créer un des trois fichiers nécessaires, commençons par le docker-compose.yml:
sudo nano docker-compose.yml
  1. On colle ça dedans:
version: "3.8"

services:
  back:
    image: zoriya/kyoo_back:edge
    restart: unless-stopped
    cpus: 1.5
    env_file:
      - ./.env
    depends_on:
      postgres:
        condition: service_healthy
      meilisearch:
        condition: service_healthy
    volumes:
      - kyoo:/kyoo

  front:
    image: zoriya/kyoo_front:edge
    restart: unless-stopped
    environment:
      - KYOO_URL=${KYOO_URL:-http://back:5000}
      - PUBLIC_BACK_URL=${PUBLIC_BACK_URL}

  scanner:
    image: zoriya/kyoo_scanner:edge
    restart: unless-stopped
    depends_on:
      back:
        condition: service_healthy
    env_file:
      - ./.env
    environment:
      - KYOO_URL=${KYOO_URL:-http://back:5000}
    volumes:
      - ${LIBRARY_ROOT}:/video

  transcoder:
    image: zoriya/kyoo_transcoder:edge
    restart: unless-stopped
    env_file:
      - ./.env
    volumes:
      - ${LIBRARY_ROOT}:/video
      - ${CACHE_ROOT}:/cache
      - metadata:/metadata

  ingress:
    image: nginx
    restart: unless-stopped
    environment:
      - PORT=8901
      - FRONT_URL=http://front:8901
      - BACK_URL=${KYOO_URL:-http://back:5000}
    volumes:
      - ./nginx.conf.template:/etc/nginx/templates/kyoo.conf.template:ro
    depends_on:
      - back
      - front
    ports:
      - "8901:8901"
  1. Maintenant passons à la création du fichier .env, qui est donc un fichier caché vu q'il commence par un point:
sudo nano .env
  1. On colle le code ci-dessous, et c'est maintenant qu'il va falloir mettre votre clé API crée précédemment juste après le = de THEMOVIEDB_APIKEY=.
  • THEMOVIEDB_APIKEY=gdf5g6df5gdf6gd6d5dd

Vous devez également changer la valeur de AUTHENTICATION_SECRET par une autre, choisissez quelque chose de costaud du style:

  • AUTHENTICATION_SECRET=tQrd8H7z3Ek6h2q7A^^mV%uVN!@XW4n!TpBcqk8uSZywx
# Useful config options
LIBRARY_ROOT=./video
CACHE_ROOT=/tmp/kyoo_cache
LIBRARY_LANGUAGES=fr

# A pattern (regex) to ignore video files.
LIBRARY_IGNORE_PATTERN=.*/[dD]ownloads?/.*

# The following two values should be set to a random sequence of characters.
# You MUST change thoses when installing kyoo (for security)
AUTHENTICATION_SECRET=4c@mraGB!KRfF@kpS8739y9FcHemKxBsqqxLbdR?
# You can input multiple api keys separated by a ,
KYOO_APIKEYS=t7H5!@4iMNsAaSJQ49pat4jprJgTcF656if#J3

DEFAULT_PERMISSIONS=overall.read
UNLOGGED_PERMISSIONS=overall.read

THEMOVIEDB_APIKEY=gdf5g6df5gdf6gd6d5dd     # Ajoutez votre clé API
PUBLIC_BACK_URL=http://localhost:5000



# Following options are optional and only useful for debugging.

# To debug the front end, you can set the following to an external backend
KYOO_URL=
# The library root inside the container.
KYOO_LIBRARY_ROOT=/video

# Database things
POSTGRES_USER=KyooUser
POSTGRES_PASSWORD=KyooPassword
POSTGRES_DB=kyooDB
POSTGRES_SERVER=postgres
POSTGRES_PORT=5432

MEILI_HOST="http://meilisearch:7700"
MEILI_MASTER_KEY="ghvjkgisbgkbgskegblfqbgjkebbhgwkjfb"

# vi: ft=sh
  1. Et enfin le dernier fichier, le fichier nginx.conf.template:
sudo nano nginx.conf.template
  1. On colle ça dedans:
server {
        listen ${PORT};
        root /usr/share/nginx/html;

        location / {
                proxy_pass ${FRONT_URL};
                proxy_http_version 1.1;
                proxy_set_header Upgrade $http_upgrade;
                proxy_set_header Connection "upgrade";
        }

        location /api/ {
                proxy_pass ${BACK_URL}/;
                proxy_http_version 1.1;
                proxy_set_header Upgrade $http_upgrade;
                proxy_set_header Connection "upgrade";
        }
}
  1. On installe l'application:
docker-compose up -d

ou avec docker-compose V2:

docker compose up -d
  1. Rendez-vous sur l'ip:port, le port par défaut est 8901:
http://ip:8901

Création du compte

Une fois la page lancée, cliquez sur Inscrivez-vous:

Remplissez les questions habituelles et cliquez sur Créer un compte:


Mettre Kyoo en français, s'il n'est déjà pas en français

En haut à droite vous cliquez sur votre compte et sélectionnez Paramètres:

Maintenez vous pouvez choisir le français:


Ou mettre ses fichiers vidéos?

Connectez vous à votre serveur et, suivant ou vous avez installé l’application, ça sera dans le dossier video qui se trouve dans le dossier d’installation de Kyoo:


Disponibilité

Sur votre navigateur préféré.

Il existe également une application Android dédiée:

https://github.com/zoriya/kyoo/releases/latest/download/kyoo.apk

zarev

🐧 Passionné de self-hosting, je partage ce que je connais et me nourris des connaissances des bonnes âmes qui partagent avec moi. Soutenons l'utilisation des apps open source et leurs développeurs.

Vous pourriez aussi aimer