Aller au contenu

[Résolu]mysqueezebox.com servers - Logitech media server


Messages recommandés

Bonjour,

Je viens de recevoir un message comme quoi Logitech arrête le mysqueezebox.com server début février.
https://www.mysqueezebox.com/index/Home?langoverride=FR
Je possède une Squeezebox Radio et une SqueezeBox Boom. Si je comprends bien je n'aurai plus accès aux radios est aux services comme Tidal.

Dans le message, ils indiquent qu'il sera toujours possible d'utiliser les Squeezebox en accédant localement au Logitech Media Server.
L'inconvénient, c'est qu'il n'y a plus le paquet "Logitech Media Server" pour le Synology (DS220+ - DSM 7.2.1).

En parcourant le forum, je crois comprendre qu'il est toujours possible d'utiliser "Logitech Media Server" avec Docker (container manager).

Pourriez-vous m'expliquer si c'est possible et comment faire en pratique?

Un tout grand merci pour votre aide 😊
Belle journée
Amélie

 

Lien vers le commentaire
Partager sur d’autres sites

J'ai trouvé le tuto sur Docker
https://www.nas-forum.com/forum/topic/65309-tuto-docker-introduction

J'ai réussi à installer Docker. Jusque là c'est facile 😊
Ensuite j'ai double cliqué sur "Imscommunity/logitechmediaserver"
Et j'ai suivi les indications lors de l'installation

Capturedecran2024-01-29a14_47_22.thumb.png.15285bea30e6cb93c3d6eb9a942cf1e1.png

Capturedecran2024-01-29a14_49_09.thumb.png.32e552c0d95cc4041b66fc70d22f6765.png

 

Capturedecran2024-01-29a14_47_39.thumb.png.f0f3603d11111a8dcc78e57f6c1f67fb.png

Capturedecran2024-01-29a14_51_34.png.cf2e06fcb673e4d2d5ef7c18ec12e587.png

 

 

 

 

Capturedecran2024-01-29a14_53_01.thumb.png.071d9fc681de870a4caa201be8db112b.png

Capturedecran2024-01-29a15_34_36.thumb.png.672f315b38a528898cead5e31a26c009.png

 

Capturedecran2024-01-29a15_34_45.png.63cbc87c4088f5e39a535cc36c765049.png

 

Je cale au niveau de l'adresse ip à donner à la squeezebox.
J'ai essayé 192.168.1.2 (adresse du diskstation), cela ne fonctionne pas.
J'ai probablement mal fait un truc ou l'autre... C'est pas simple 🙁
Que dois-je faire?
 

 

 

Modifié par Amelie
Lien vers le commentaire
Partager sur d’autres sites

Pas mal du tout.
Mais ce serait peut-être plus facile de copier le docker compose de la page de l'image que tu as prise :

https://hub.docker.com/r/lmscommunity/logitechmediaserver

version: '3'
services:
  lms:
    container_name: lms
    image: lmscommunity/logitechmediaserver
    volumes:
      - /<somewhere>:/config:rw
      - /<somewhere>:/music:ro
      - /<somewhere>:/playlist:rw
      - /etc/localtime:/etc/localtime:ro
      - /etc/timezone:/etc/timezone:ro
    ports:
      - 9000:9000/tcp
      - 9090:9090/tcp
      - 3483:3483/tcp
      - 3483:3483/udp
    environment:
      - HTTP_PORT=9000
    restart: always

directement dans la partie projet du container manager.
(en remplaçant les <somewhere> du texte par l'emplacement exact.
Après tu peux aussi le faire avec portainer, mais je ne sais pas si tu l'as installé

Lien vers le commentaire
Partager sur d’autres sites

Merci @Lelolo pour ta réponse 😊
A mon avis, j'ai dû louper un truc car je n'ai rien dans la partie "projet" du container
 



Capturedecran2024-01-29a18_15_39.thumb.png.5ecd0e537a58a2de874b99703555b2b9.png

 

Je n'ai pas installé "portainer".  Quel est son utilité?
Merci pour ton aide.

Lien vers le commentaire
Partager sur d’autres sites

Tu crée un projet, en choisissant de créer un fichier docker compose, avec le texte cité au dessus.
C'est ensuite plus facile à maintenir.
Portainer c'est une interface de gestion des containers dans docker.
Si c'est ton premier ce n'est pas utile

Lien vers le commentaire
Partager sur d’autres sites

il y a 27 minutes, Lelolo a dit :

Tu crée un projet, en choisissant de créer un fichier docker compose, avec le texte cité au dessus.
 

Si je fais ça, je dois supprimer ce que j'ai fait auparavant?

Je donne le nom que je veux?
Le chemin, c'est quoi?
Pour la source, je choisis "créer un fichier docker-compose.yml?

Capturedecran2024-01-29a18_59_17.thumb.png.94d431cd61c3b657f6943e39bd5db0d1.png

Lien vers le commentaire
Partager sur d’autres sites

il y a 5 minutes, Amelie a dit :

1. Si je fais ça, je dois supprimer ce que j'ai fait auparavant?
2. Je donne le nom que je veux?
3. Le chemin, c'est quoi?
4. Pour la source, je choisis "créer un fichier docker-compose.yml?

  1.  non, tu arrêtes le container, et tu le renommes 1/old/ce que tu veux,
  2. oui,
  3. Cliques, et tu devrais comprendre.
    C'est en lien avec le <somewhere>, que tu auras choisi et créé
  4. oui
Lien vers le commentaire
Partager sur d’autres sites

1 > fait
2 > ok > logitech-media-server
3 >

Capturedecran2024-01-29a19_54_40.thumb.png.5c7c166c432369f0e141c1096fe62b00.png

C'est là que cela se complique, je ne comprends pas trop bien le chemin. J'ai vu un dossier "docker"
Par quoi je dois remplacer "somewhere"?
 

 

 

Lien vers le commentaire
Partager sur d’autres sites

Hello @Amelie, c'est bien de se lancer, Docker c'est pratique 🙂 mais pas vraiment naturel, je le reconnais.

Comme l'a dit @Lelolo, tu as effectivement deux façons de procéder, en créant le conteneur directement ou bien en passant par un projet. Ce dernier permet de conserver les paramètres de configuration de ton conteneur, c'est donc préférable. C'est un point que je n'aborde pas dans le tutoriel introductif car l'ancienne mouture du paquet Docker ne permettait pas de le faire.

Si tu décortiques le fichier compose, tu peux voir que les différentes sections du fichier reprennent en fait ce que tu as configuré en parcourant les sous-menus avec la méthode de création de conteneur en direct. Ce qu'il manquait dans ta première tentative c'était le mappage des ports, ici :

Capture d’écran 2024-01-29 à 14.51.34.png

L'idée c'est de faire comme tu fais avec ton routeur et ton NAS. Ton NAS n'est pas accessible directement depuis Internet, tu dois faire de la redirection de ports (encore appelée NAT) d'un port du routeur vers ton NAS pour accéder à un service donné. Ici c'est exactement la même chose, le NAS tient le rôle du routeur dans l'exemple précédent, et le conteneur le rôle du NAS.

Donc dans l'impression ci-dessus, tu aurais dû préciser à la place de "Port local" le port du NAS qui va correspondre à celui du conteneur. Ici ton conteneur expose des services/API sur 4 ports distincts. Généralement, on utilise les mêmes ports sur l'hôte (le NAS), sauf si ceux-ci sont déjà utilisés. Et normalement, les logs te diront si c'est le cas lorsque tu essaieras de déployer ton conteneur.

Maintenant revenons au fichier compose, je te propose quelques changements :

  • Changer la version de 3 à 2.1
  • Volumes : les volumes permettent de préciser où l'application va lire et écrire les données, monter un volume crée un lien entre les dossiers du NAS et ceux du conteneur :
    • Pour la configuration, tu peux créer un dossier "lms" et un sous-dossier "config" dans le dossier partagé docker ce qui donnera -> /volume1/docker/lms/config:/config:rw
      • En faisant, tu dis que le dossier /volume1/docker/lms correspond au dossier /config dans le conteneur et qu'on peut lire et écrire dans ce dossier (rw)
    • Pour la musique, et bien si tu le dossier partagé music par défaut de DSM, tu dois monter ce dossier en lecture seule (ro) -> /volume1/music:/music:ro
    • Pour les playlists, à toi de voir où tu veux créer le dossier, ça pourrait être /volume1/docker/lms/playlists ou /volume1/music/playlists, ou tout autre dossier de ton choix

      IMPORTANT A COMPRENDRE : Si tu oublies de monter un volume, les données s'écrivent quand même, mais elles sont simplement très difficiles d'accès, pour simplifier disons qu'elles ne sont visibles que dans le conteneur.
  • /etc/timezone doit devenir /etc/TZ sur les NAS Synology -> /etc/TZ:/etc/timezone
  • Environment : ce sont les variables d'environnement qui personnalisent ton application, ici je te conseille d'ajouter les variables suivantes :
    • PUID=XXXX
      • Il s'agit de l'ID de l'utilisateur qui va exécuter l'application, et donc pour faciliter la gestion des permissions liées au dossier, je te conseille :
        • de définir l'utilisateur en question comme propriétaire du dossier lms que tu as créé dans le dossier partagé docker -> clic droit / propriétés / propriétaire
        • de t'assurer que l'utilisateur en question est capable de lire la musique du dossier partagé music
      • Pour connaître cette ID, tu dois te connecter au terminal et taper id <nom_utilisateur> (sans les symbôles > et <)
    • PGID=100 : C'est le groupe auquel appartient tous les users, c'est le choix le plus immédiat.

 

Ca devrait donner quelque chose comme ça au final :

version: '2.1'
services:

  lms:

    container_name: lms
    image: lmscommunity/logitechmediaserver
    volumes:
      - /volume1/docker/lms/config:/config:rw
      - /volume1/music:/music:ro
      - /volume1/docker/lms/playlists:/playlist:rw
      - /etc/localtime:/etc/localtime:ro
      - /etc/TZ:/etc/timezone:ro
    ports:
      - 9000:9000/tcp
      - 9090:9090/tcp
      - 3483:3483/tcp
      - 3483:3483/udp
    environment:
      - HTTP_PORT=9000
      - PUID=XXXX
      - PGID=100
    restart: unless-stopped
Modifié par .Shad.
Lien vers le commentaire
Partager sur d’autres sites

Bonjour @.Shad.
Merci pour ta réponse.
Je ne suis pas chez moi de la journée. Je regarde à cela ce soir.
Pour que je comprenne bien... c'est quoi exactement Docker, le conteneur?
Quand j'aurai réussi à configurer le tout correctement, que sera l'adresse IP que je devrai donner à la Squeezebox?
Belle journée

Modifié par Amelie
Lien vers le commentaire
Partager sur d’autres sites

Docker c'est le logiciel qui permet d'exécuter des applications dans un espace isolé de DSM, ça a l'avantage de ne pas impacter les fichiers d'installation et les dépendances de DSM. C'est comme une machine virtuelle sauf qu'on ne lui associe pas des ressources dédiées, il prend ce dont il a besoin sur la machine hôte.

Si tu fais le mappage de port comme expliqué précédemment, il te suffira d'entrer l'IP locale du NAS (192.168...) suivie du port (parmi les 4) qui expose l'interface de LMS.

Lien vers le commentaire
Partager sur d’autres sites

@Amelie

Tu as loupé la partie où le XXXX doit être remplacé par l'ID de ton utilisateur, suivre les étapes que j'ai données en SSH.
As-tu créé les dossiers que tu montes dans ton conteneur ?

  • lms dans le dossier partagé docker
  • config et playlists dans le dossier lms

Je te conseille de localiser le fichier compose non pas dans le dossier docker mais dans le dossier lms.

Tu peux aussi passer la version de 3 à 2.1 au début du fichier.

 

Modifié par .Shad.
Lien vers le commentaire
Partager sur d’autres sites

@.Shad.,

J'ai loupé des trucs... je vais recommencer 😊
Par contre je ne comprends pas comment faire avec ID.
Tu écris "je dois me connecter au terminal" > c'est le logiciel du mac qui s'intitule "Terminal"?
je suis perdue sur ce coup là 🙁

Il y a 20 heures, .Shad. a dit :

Environment : ce sont les variables d'environnement qui personnalisent ton application, ici je te conseille d'ajouter les variables suivantes :

  • PUID=XXXX
    • Il s'agit de l'ID de l'utilisateur qui va exécuter l'application, et donc pour faciliter la gestion des permissions liées au dossier, je te conseille :
      • de définir l'utilisateur en question comme propriétaire du dossier lms que tu as créé dans le dossier partagé docker -> clic droit / propriétés / propriétaire
      • de t'assurer que l'utilisateur en question est capable de lire la musique du dossier partagé music
    • Pour connaître cette ID, tu dois te connecter au terminal et taper id <nom_utilisateur> (sans les symbôles > et <)
  • PGID=100 : C'est le groupe auquel appartient tous les users, c'est le choix le plus immédiat.

 

 

Lien vers le commentaire
Partager sur d’autres sites

J'ai un macbook pro (M1 / Sonoma)
On sait faire la même chose avec mac os?

C'est ceci?
Capturedecran2024-01-30a20_22_38.thumb.png.df40c143f32006395faecde17f503edc.png

j'ai fait un clic droit sur le dossier lms qui se trouve dans le dossier docker
Capturedecran2024-01-30a20_26_04.thumb.png.3528b4b079e2985f5027e2a046f1c0ff.png

Lien vers le commentaire
Partager sur d’autres sites

@Amelie Tu dois effectivement activer le service SSH dans un premier temps et t'assurer qu'il est autorisé dans le pare-feu a minima pour l'IP locale de ton Mac.
Puis tu lances effectivement l'application Terminal et tu te connectes avec un compte administrateur :

ssh <compte_administrateur>@IP_LOCALE_DU_NAS

Une fois connectée, si amdegehet est ton compte administrateur tu peux directement taper "id", la valeur à garder sera la première valeur affichée. Si pas, tu tapes "id <nom_utilisateur>.

Ensuite tu remplaces XXXX par cet id.

Tu mets version 2.1 à la place de 3, sinon il pourrait t'embêter, et tu tentes de redéployer le conteneur.

Modifié par .Shad.
Lien vers le commentaire
Partager sur d’autres sites

Bonjour @.Shad.,

Merci pour ta patience 😊

Je crois avoir réussi le truc avec le terminal

Capture-decran-2024-01-31-a-08_14_05.jpg.f6dcb08a5c07d699b7f24c3f61afe341.jpg

 

 

Par contre j'obtiens un message d'erreur :

Container 1ms Recreate
Container 1ms Recreated
Container 1ms Starting
Error response from daemon: Bind mount failed: '/etc/timezone' does not e
Exit Code: 1

J'ai fait une capture d'écran, mais je ne parviens pas à l'insérer 🤔

 

Belle journée
Amélie

 

 

Lien vers le commentaire
Partager sur d’autres sites

Alors pour l'ID non ce n'est pas ça, quand je le fais chez moi :

id_ssh_example.png

Tu dois trouver l'équivalent de ton 1026.

Et pour le message d'erreur, dans mon exemple de fichier compose j'ai pas mis ça 🙂 j'ai remplacé le premier /etc/timezone par /etc/TZ

Lien vers le commentaire
Partager sur d’autres sites

Il y a 2 heures, Amelie a dit :

Error response from daemon: Bind mount failed: '/etc/timezone' does not e

La timezone ou la localzone, ce ne sont pas des dossiers à monter, mais du paramétrage pour spécifier le fuseau horaire.

Lien vers le commentaire
Partager sur d’autres sites

@.Shad.

On dirait que cela fonctionne 😊

version: '2.1'
services:
lms:
container_name: lms
image: lmscommunity/logitechmediaserver
volumes:
- /volume1/docker/lms/config:/config:rw
- /volume1/music:/music:ro
- /volume1/docker/lms/playlists:/playlist:rw
- /etc/localtime:/etc/localtime:ro
- /etc/TZ:/etc/timezone:ro
ports:
- 9000:9000/tcp
- 9090:9090/tcp
- 3483:3483/tcp
- 3483:3483/udp
environment:
- HTTP_PORT=9000
- PUID=501
- PGID=100
restart: unless-stopped
Comme je ne sais plus joindre de capture d'écran (je ne comprends pas pourquoi)

J'ai obtenu le message suivant:
"Container manager : Le projet logitech-media-server a été créé avec succès"

Je vais tester pour voir si la Squeezebox trouve le nouveau serveur "logitech" que je viens de créer.
Merci @.Shad. et merci @Lelolo pour avoir pris le temps de m'aider 😊

 

Lien vers le commentaire
Partager sur d’autres sites

@.Shad.,

Effectivement, je me suis trompée.
En faisant "ID" dasn le terminal, j'avais oublié de faire auparavant "ssh amdegehet@192.168.1.2"
Du coup j'obtiens uid=1026
Je vais modifier de ce pas 😉

Modifié par Amelie
Lien vers le commentaire
Partager sur d’autres sites

Invité
Ce sujet ne peut plus recevoir de nouvelles réponses.
×
×
  • Créer...

Information importante

Nous avons placé des cookies sur votre appareil pour aider à améliorer ce site. Vous pouvez choisir d’ajuster vos paramètres de cookie, sinon nous supposerons que vous êtes d’accord pour continuer.