Générateur Docker Compose pour Jellyfin
Créez un fichier compose.yaml pour Jellyfin. Choisissez l'image officielle ou l'image LinuxServer.io, les ports et le réseau, les dossiers multimédias ainsi que l'accélération matérielle Intel, AMD ou NVIDIA, puis obtenez un fichier prêt à être exécuté.
Entrée
Sortie
- L’exécution de Jellyfin dans un conteneur est uniquement prise en charge sous Linux. Sous Windows et macOS, installez Jellyfin nativement.
Documentation
Qu’est-ce que Jellyfin ?
Jellyfin est un serveur multimédia gratuit et open source. Il diffuse vos films, séries, musiques et photos vers les navigateurs, téléphones, téléviseurs et autres appareils, et peut transcoder les vidéos à la volée. Le projet fournit une image officielle, jellyfin/jellyfin, également publiée sous le nom ghcr.io/jellyfin/jellyfin. Le projet LinuxServer.io propose une autre image, lscr.io/linuxserver/jellyfin, avec ses propres dossiers et variables.
Description de l’outil
Cet outil crée un fichier compose.yaml pour Jellyfin à partir du guide d’installation du projet. Vous choisissez l’image et le tag, les ports et le réseau, l’utilisateur, les dossiers de configuration et de cache, ainsi que le nombre de dossiers multimédias souhaité, lesquels peuvent être montés en lecture seule. Avec l’image officielle, vous pouvez également monter des dossiers contenant des polices personnalisées et des polices de remplacement. Pour la carte graphique, l’outil ajoute les éléments décrits dans la documentation de Jellyfin : /dev/dri et le groupe de rendu pour Intel et AMD, ou le runtime NVIDIA et une réservation de GPU pour NVIDIA. Il modifie le fichier lorsque vous sélectionnez l’image LinuxServer.io, qui utilise PUID, PGID et TZ à la place de user. Tout est créé dans votre navigateur.
Fonctionnalités
- L’image officielle depuis Docker Hub ou la GitHub Container Registry, ou l’image de LinuxServer.io, avec n’importe quel tag
- Le mode bridge avec les ports 8096 et 7359/udp, un port HTTPS facultatif 8920 et une adresse de liaison, ou le mode host, requis par DLNA
- L’URL publiée du serveur pour les clients qui détectent le serveur
- Un utilisateur au format
uid:gidpour l’image officielle, ouPUID,PGIDet le fuseau horaire pour LinuxServer.io - La configuration et le cache sur l’hôte ou dans des volumes Docker nommés, qui sont déclarés pour vous
- Plusieurs dossiers multimédias, chacun avec un chemin dans le conteneur et une option pour le monter en lecture seule
- Des polices personnalisées et des polices de remplacement pour les sous-titres incrustés lors du transcodage
- L’accélération matérielle avec VA-API ou QSV pour Intel et AMD, ou NVENC pour NVIDIA
- Toute autre variable d’environnement, des commentaires expliquant le fichier et un téléchargement au format
compose.yaml
Exemples
Les paramètres par défaut reproduisent l’exemple de la documentation de Jellyfin, avec les dossiers situés à côté du fichier :
services:
jellyfin:
image: jellyfin/jellyfin
container_name: jellyfin
ports:
- "8096:8096"
- "7359:7359/udp"
volumes:
- ./config:/config
- ./cache:/cache
- /path/to/media:/media
restart: unless-stoppedLe choix de l’accélération matérielle NVIDIA ajoute le runtime et la réservation de GPU :
runtime: nvidia
deploy:
resources:
reservations:
devices:
- driver: nvidia
count: all
capabilities:
- gpuConseils
- Enregistrez le résultat sous le nom
compose.yamlet démarrez-le avecdocker compose up -d. Ouvrez ensuitehttp://localhost:8096et ajoutez vos dossiers multimédias en tant que bibliothèques, en utilisant les chemins dans le conteneur - L’exécution de Jellyfin dans un conteneur est prise en charge uniquement sous Linux. Sous Windows et macOS, installez Jellyfin nativement, car l’accélération matérielle et l’analyse des bibliothèques sont connues pour ne pas fonctionner correctement dans les conteneurs sur ces systèmes
- Trouvez l’ID du groupe de rendu sur l’hôte avec
getent group render | cut -d: -f3. Sur certains systèmes, le groupe estvideoouinput - Pour NVIDIA, installez d’abord le pilote NVIDIA et le NVIDIA Container Toolkit sur l’hôte
- Après avoir activé l’accélération matérielle dans le conteneur, activez-la dans le tableau de bord Jellyfin, sous Lecture, Transcodage
- DLNA est un plugin et nécessite le mode host, car sa détection utilise des diffusions sur le port 1900/udp, qui ne traversent pas le bridge
- Les images du projet officiel et de LinuxServer.io stockent leurs données à des emplacements différents ; vous ne pouvez donc pas remplacer l’une par l’autre dans un dossier existant
- Montez les médias en lecture seule lorsque Jellyfin n’a pas besoin de les modifier