Einsteinium Posté(e) le 20 février 2018 Posté(e) le 20 février 2018 (modifié) Bonjour, Nous allons voir comment faire un docker pas à pas avec Plex. Pourquoi ? Car Plex dans un docker ne pollue pas le nas, se réinstalle en 2 clics et ne se soucis pas des changements majeurs de DSM. I - Installation de l’image : On se rend donc dans « Registre » (1) et on recherche « plex » (2), pour ma part et pour ce tutoriel, j’utilise la première image « linuxserver/plex », le groupe linuxserver produit des images de qualité, propres et suivies, l’image officielle de plex (en dessous ici) est arrivée bien en retard.. souvent sujette à des bugs... Bref je ne l’utilise pas pour ma part. Une fois l’image sélectionnée (3), on clique sur le bouton « télécharger » (4) II - Le lancement de l’image : On se rend ensuite dans « Image » (1), on la sélectionne (2), puis le bouton « Lancer » (3) III - Les différentes configurations de l’image avec en dessous des explications sur les choix mis : 1) Paramètres généraux / Paramètres avancés : - « Exécuter le conteneur à l’aide de privilèges élevées » : décoché, si vous cochez... le conteneur aura un accès à /dev/ de votre nas... autant dire que le rôle d’isolation du docker n’a plus aucun intérêt. - « Activer la limitation des ressources » : coché, on ne tient pas à ce que Plex cannibalise nos nas, on a d’autres paquets derrière qui ne peuvent se permettre d'être ralentis. -> Priorité des processeurs : moyen, c’est le meilleur équilibre, bas votre plex sera à la peine, haut cela sera votre nas. -> Limite de la mémoire : 4096, le minimum syndical... c’est 2048, si vous avez la possibilité d’en mettre plus, plex les exploitera sans aucun soucis. - « Activer le redémarrage automatique » : coché ou pas, dock qui plante, paquet docker en auto update ou nas qui reboot pour X raison (update, maintenance...), le dock, plex par extension ici, se relancera automatiquement. - « Raccourci sur le bureau » : coché ou pas, cela évite de lancer docker pour faire « détail » sur le dock, utile pour voir la consommation ou les logs plus rapidement. 2) Volume : Ici typiquement, j’ai mis l’exemple concret d’un usage type (le mien), donc colonne « chemin d’accès », c’est ce que vous devez avoir pour que cela soit conforme et propre. Colonne « Fichier/Dossier », pour « config » et « transcode », comme vous le voyez, j’ai un dossier Plex dans le dossier partagé docker, vous pouvez bien sûr les mettre ailleurs, mais il vous faudra donner les droits, un peu con dans la mesure où le dossier docker est là pour ça, bref là, à vous de voir si vous voulez faire un dossier partagé de plus pour cela. Vous remarquerez aussi que pour la bibliothèque, je ne donne que des droits de lecture, plex permet la suppression de fichiers directement, personnellement.. un accident étant vite arrivé, je bloque donc en lecture seule. Pour les droits sur vos fichiers multimédias... bien lire le tutoriel correctement, surtout la partie : III / 5) Environnement / PUID/GUID 3) Réseau/Paramètres des ports/Liens : Ici vous n’avez qu’une case à cocher : « Utiliser le même réseau que Docker Host », les onglets « Paramètres des ports » et « Liens » seront donc ignorés, Plex se lance en host, sinon cela cause pas mal de soucis... (réclame du serveur, tunneling, etc...) Dans les ports que vous êtes susceptibles d’utiliser, aucune crainte : - Port 5353, pas de soucis il suffira de désactiver ce service sur le serveur plex. - Port 1900, et bien je pense que vous désactiverez le serveur multimédia pour celui de plex si vous en faites usage (on a les miniatures par exemple, plus de catégorie,etc...), le service est là aussi désactivable. 4) Environnement : Pour l’environnement, je triche en mettant directement celui du mien, donc ne faites pas attention si la fenêtre est légèrement différente, d’ailleurs dans le cadre « commande » qui n’est pas visible ici, mais qu’à la création, vous le laissez vide. Donc ici vous devez avoir l’identique sauf pour : TZ : Selon votre fuseau horaire, ici la France. VERSION : latest ou public. Au choix si vous avez le plex pass ou non, sachant qu’avec latest vous avez donc les bêta accessibles uniquement au membre plex pass, personnellement je n’ai jamais eu de problème avec les bêta. PUID/GUID : Alors ici s’offre deux choix à vous... - Soit vous supprimez ces derniers et le serveur en aura un aléatoire, à ce moment là il faudra juste donner les droits de lecture au groupe « users » pour vos dossiers multimédias. Pour rappel ce groupe « users » contient tous les utilisateurs du nas, donc ce choix ne concerne que ceux qui utilisent le nas que pour eux ou qui s’en foutent que leurs membres voient le multimédia. - Soit vous créez un utilisateur dédié, sur lequel vous donnerez là aussi les droits de lecture sur vos fichiers multimédias, tout en lui castrant tout le reste (cf onglet application du compte lors de la création). Vous remarquerez lors de la définition des droits, que le compte aura un droit de lecture sur docker par défaut, ne pas toucher, sinon votre dock n’aura plus d’accès à config/transcode (cf plus haut la configuration), maintenant si ces derniers ne sont pas dans docker, il vous faudra donner un droit de lecture/écriture au dossier partagé qui les contiendra. Une fois votre utilisateur créé, connectez vous en ssh sur le nas et tapez : id utilisateurplexcréé, vous aurez alors en retour le GUID et PUID à mettre en paramètre, en image les points rouge : Voilà vous en avez terminé avec le docker. Au premier lancement, il se mettra à jour vers la dernière version choisie disponible, lorsque vous voulez mettre à jour plex, vous n’avez qu’à stopper le dock et le relancer. Adresse du serveur : https://ipdunas:32400 (en cas d’erreur, rajoutez /web à la fin) IV - Activation du transcodage matériel : Étape 1 : Dans docker, vous allez sur « conteneur », vous sélectionnez votre dock plex, vous sélectionnez « paramètre » puis « exporter », vous laissez coché la case « Exporter les paramètres du conteneur » et mettez la destination. Maintenant ouvrez le fichier json créé, vous remplacez : "ddsm_bind_share" : "", "devices" : [], Par : "devices" : [ { "CgroupPermissions" : "rwm", "PathInContainer" : "/dev/dri", "PathOnHost" : "/dev/dri" } ], Étape 2 : Ensuite vous créez un fichier « plexhw.sh » dans lequel vous mettrez le contenu suivant, vous rajouterez ce dernier dans le gestionnaire des tâches avec une exécution à chaque démarrage du nas : #!/bin/sh if [ -d /dev/dri ]; then chmod 666 /dev/dri/renderD128 chmod 660 /dev/dri/card0 fi exit 0 Exécuter ce script une première fois. Une fois ces manœuvres terminées, supprimez votre dock plex, vous sélectionnez « paramètre » puis « Importer » et on reprend la configuration fraichement modifiée, vous retrouvez votre dock plex, mais cette fois ci avec le transcodage matériel. Dans l’état du serveur plex, vous verrez lors de transcodage matériel se rajouter (hw) : V - Affranchir Plex et lui attribuer sa propre IP comme une VMM : Étape 1 : Pourquoi ? Suite à des conflits avec le port 5353 ou 1900 par exemple, si vous voulez que votre plex passe par la 4G, etc... Nous allons créé pour commencer une nouvelle interface dans docker avec le driver macvlan, qui n´est pas disponible en interface graphique. On se connecte en ssh, puis en root et on tape en adaptant : docker network create -d macvlan --subnet=192.168.0.0/24 --gateway=192.168.0.1 --ip-range=192.168.0.100/32 -o parent=ovs_eth0 plex_lan Donc ici vous devez avoir l’identique sauf pour : SUBNET : si votre réseau local est en 192.168.0.X, alors vous mettez 192.168.0.0, on laissera le /24, qui indique que votre réseau commence de l´ip 192.168.0.1 à 192.168.0.254 GATEWAY : l´adresse IP de votre routeur, tout simplement. RANGE : Ici j´ai tenté plusieurs manoeuvres, on ne peut fixer l´ip d´un docker qu´en le lançant manuellement en ligne de commande, au relancement il prendra la première ip disponible du range, donc nous allons faire simple ici, vous mettez l´ip que vous voulez pour votre serveur plex, le /32 fera qu´il n´y aura que cette IP de disponible pour cette interface réseau. PARENT=OVS_ETH0 : Alors si vous avez open vswitch d´activé cela sera ovs_ethX, sinon cela sera ethX (X correspond à l´interface lan que vous voulez, 0 étant lan 1, 1 étant lan 2, etc...). PLEX_LAN : le nom de l´interface réseau. Étape 2 : La suite à adapter aussi si vous avez mis un autre nom à l´interface. Dans docker, vous allez sur « conteneur », vous sélectionnez votre dock plex, vous sélectionnez « paramètre » puis « exporter », vous laissez coché la case « Exporter les paramètres du conteneur » et mettez la destination. Maintenant ouvrez le fichier json créé, vous remplacez : "network" : [ { "driver" : "host", "name" : "host" } ], "network_mode" : "host", Par : "network" : [ { "driver" : "macvlan", "name" : "plex_lan" } ], "network_mode" : "plex_lan", Une fois ces manoeuvres terminées, supprimez votre dock plex, vous sélectionnez « paramètre » puis « Importer » et on reprend la configuration fraichement modifiée, vous retrouvez votre dock plex, mais cette fois ci avec sa propre IP et affranchie de votre NAS au même titre qu´une VMM. Avis Perso : Dans mon cas, je l´ai fait pour la 4G, alors oui on ne peut pas ouvrir les ports en 4G, mais on a le relai de plex, qui en plex pass donne 2Mbps de bande utilisable, toute qualité en 720p et moins restera dans sa qualité, le 1080p sera dégradé en 480p. Quand on a l´adsl et son petit Mbps... on passe de vidéo lissée et passable... à une qualité enfin honorable. Voilà c’est fini Modifié le 3 janvier 2022 par Einsteinium IV étape 2 - update script 0 Citer
Mic13710 Posté(e) le 21 février 2018 Posté(e) le 21 février 2018 Sans doute un super tuto, mais j'aurai du mal à donner un avis vu que je n'utilise pas PLEX et que mon 214 n'a pas docker. 0 Citer
Einsteinium Posté(e) le 21 février 2018 Auteur Posté(e) le 21 février 2018 voilà une bonne raison de changé 0 Citer
Skylnex Posté(e) le 21 février 2018 Posté(e) le 21 février 2018 Super tuto ! Vraiment très précis. Tu vois vraiment une différence de performance sur le transcodage matériel ? 0 Citer
Einsteinium Posté(e) le 21 février 2018 Auteur Posté(e) le 21 février 2018 Et bien disons que quand tu transcode matériellement, tu soulages le proco... sans, ton cpu utilisera toute les ressources qu’il pourra, avec tu seras plus au alentour des 30% de sollicitation. Maintenant sans ou avec, dans mon cas, je ne vois aucune différence à l’usage (je transcode 5 flux Max en même temps), à part le soulagement du cpu. 0 Citer
Skylnex Posté(e) le 21 février 2018 Posté(e) le 21 février 2018 Ah oui quand même ! Par contre comment c'est possible de faire 5 transcodages simultanés avec un processeur de NAS qui est normalement inférieur à 2000 de benchmark. 2000 étant le minimum recommandé par Plex pour effectué 1 transcodage. 0 Citer
Einsteinium Posté(e) le 21 février 2018 Auteur Posté(e) le 21 février 2018 Sur les 5 flux en générale seul 2 son hd, les 3 autres sd. Une bonne optimisation de plex et puis tu ne lance jamais les flux en même temps, donc le serveur joue la balance pour le transcodage Personnellement je tends à faire disparaître le transcodage en mettant ma bibliothèque en h264, format lu nativement par les lecteurs plex. 0 Citer
pluton212+ Posté(e) le 22 février 2018 Posté(e) le 22 février 2018 merci, j'ai fait quelques modifs (limitation des ressources par ex.) 0 Citer
Skylnex Posté(e) le 23 février 2018 Posté(e) le 23 février 2018 Petit erreur dans le tuto, Plex se trouve à l'adresse suivante : http://adressipdunas:32400/web, du moins chez moi :) 0 Citer
pluton212+ Posté(e) le 23 février 2018 Posté(e) le 23 février 2018 http://adressipdunas:32400 ça redirige. 0 Citer
Skylnex Posté(e) le 23 février 2018 Posté(e) le 23 février 2018 Pas chez moi, j'ai l'erreur suivante : "This XML file does not appear to have any style information associated with it. The document tree is shown below" avec un XML en dessous et tout plein d'information. De plus, je n'ai pas le même fichier JSON qu'indiqué, en pièce jointe les premières lignes de celui-ci. J'ai bien suivie le tuto et pris la même image. 0 Citer
Einsteinium Posté(e) le 23 février 2018 Auteur Posté(e) le 23 février 2018 Cela arrive comme bug, quand le serveur et pas réclamé... Concernant le json, c’est clair, tu dois supprimé un paramètre et en modifier un autre, qu’importe ensuite les autres différences de ce dernier, si j’ai mis en image. C’est pour que cela soit bien visible. (Encadrer jaune) 0 Citer
Skylnex Posté(e) le 23 février 2018 Posté(e) le 23 février 2018 (modifié) ça marche merci ! Je pensais avoir une erreur de configuration vu qu'il n'est pas exactement comme le tient. Edit : mb je sais pas lire Modifié le 23 février 2018 par Skylnex 0 Citer
Einsteinium Posté(e) le 23 février 2018 Auteur Posté(e) le 23 février 2018 J’ai rajouté une remarque pour le /web dans le tutoriel ;-) 0 Citer
Skylnex Posté(e) le 23 février 2018 Posté(e) le 23 février 2018 Ok j'ai tout configuré tout semble marché correctement. Par contre, Plex m'indique une mise à jour dans les paramètres, alors que j'ai saisie dans les paramètres du container : VERSION / public. J'ai bien redémarré mon container. 0 Citer
Einsteinium Posté(e) le 23 février 2018 Auteur Posté(e) le 23 février 2018 Tu as quelle version là actuellement ? Tu es membre gratuit ou plexpass ? 0 Citer
Skylnex Posté(e) le 23 février 2018 Posté(e) le 23 février 2018 Je suis Plex pass pour un mois car je voulais tester si c'est indispensable, de plus il me semble que le transcodage matériel est disponible seulement pour le Plex pass donc je verrai. Je suis en version 1.10.1.4602 0 Citer
Einsteinium Posté(e) le 23 février 2018 Auteur Posté(e) le 23 février 2018 Ah bah voilà c’est normal, faut mettre latest pour avoir les versions bêtas plexpass, sinon tu auras ce message. Effectivement j’avais lu aussi que c’était réservé aux membres plexpass le transcodage, mais là je serais pas te dire, j’ai direct pris l’abonnement. Sinon pour avoir les alertes de maj, tu peux mettre une alerte sur ce topic : http://forums.plex.tv/discussion/62832/plex-media-server/p11 0 Citer
Skylnex Posté(e) le 23 février 2018 Posté(e) le 23 février 2018 Effectivement ça se met à jour actuellement :). Super merci ! Petite question qui n'a rien à voir avec Plex mais avec docker, est-ce que sur tous les container tu coche "utiliser le même host que docker", pour PlexPy, Sonarr, Radarr. 0 Citer
Einsteinium Posté(e) le 23 février 2018 Auteur Posté(e) le 23 février 2018 Non il n’y a que plex, j’utilise aussi le pare-feu du nas. 0 Citer
Skylnex Posté(e) le 23 février 2018 Posté(e) le 23 février 2018 (modifié) Petit problème lors de la Maj, j'ai ce message dans les logs "Atempting to upgrade to: 1.11.3.4803-c40bba82e" qui bloque le démarrage du container. C'est très long (plus d'une heure) Modifié le 23 février 2018 par Skylnex 0 Citer
Einsteinium Posté(e) le 24 février 2018 Auteur Posté(e) le 24 février 2018 Suffit de maté le moniteur de ressource, j’ai remarqué que le soir c’etait à la penne avec free... (je télécharge à 30ko/s les 100mo...) alors que n’importe quand je plafonne au Max de ma connection. 0 Citer
Skylnex Posté(e) le 24 février 2018 Posté(e) le 24 février 2018 Effectivement c'était juste super long, j'ai laissé tourner toute la nuit. Merci pour ton tuto et ton aide, tout fonctionne :) 0 Citer
Einsteinium Posté(e) le 24 février 2018 Auteur Posté(e) le 24 février 2018 Petit hs tu utilises plexpy juste pour les stats ? 0 Citer
Messages recommandés
Rejoindre la conversation
Vous pouvez publier maintenant et vous inscrire plus tard. Si vous avez un compte, connectez-vous maintenant pour publier avec votre compte.