Announcement

Collapse
No announcement yet.

'Official' docker container for LMS?

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

    Thank you Claus for replay,


    Originally posted by cfuttrup View Post
    Are you trying to run LMS on a PC and stream music directly from LMS to a USB port on the PC?
    Yes, i have pc with ubuntu and on it installed lms on docker container, this host have sound card and another extension port. So i am using LMS as media server that its easy to manageable by smartphone. I don't have any another devices to control LMS, just web and smartphone.

    To play music from my resources i'm using lms on container which is using extension port from host pc and for it i'm using LMS local player which works great with host sound card.
    My only problem is to how correctly pass through to container my usb as output to my amplifier.
    If i start music on my host i can choose this usb as audio output and sound is going to my amplifier, so i probably missing something which should be pass through to lms container.

    I don't use picoreplayer, local player works fine. About Squeezelite-X i read that this is software for windows, so it can't solve my problem.
    Last edited by bpbiszkopt; 2022-11-23, 09:21.

    Comment


      Hi bpbiszkopt

      LMS is a server. You need a client (a music player).
      LMS does not “play music”, it just collects music, and manages its stock and access, and distributes them to the actual music players (the “renderers”).
      The client receives the music from LMS and sends it wherever you want to, e.g. to the USB port on your PC (if the USB port is identified as a sound device).
      Since Squeezelite-X isn't supported in Ubuntu, I don't know what other software you can use, sorry I'm not that well versed in Linux systems.
      Would you be able to use e.g. VLC? I don't know. Hopefully someone can help you how to set it up.

      Cheers,
      Claus

      Comment


        If anyone will be struggling with similar problem just check below link, and post user "godzinilla" that should fix your problem.

        https://forum.openmediavault.org/ind...r-to/&pageNo=4

        Comment


          Hi bpbiszkopt

          I'm sorry that I didn't know about Local Player 3rd party plugin, now that I reread your questions (on previous page) I see you mention Local Player at the beginning.

          BTW, I just wish to mention that the proposed Squeezelite-X solution is now being worked on in a Linxu version. Please see if this works for you (it gives you a great UI):



          /Claus

          Comment


            The LMS 8.4 download page was updated 2 days ago with a new beta release, but the lmscommunity/logitechmediaserver docker development version image is 4 days old.

            Comment


              Thanks for the heads up! Some upgrade broke authentication (again). I thought I had fixed this. But all I did was change the script to not fail with a bang... I'll look into this.
              Michael

              "It doesn't work - what shall I do?" - "Please check your server.log and/or scanner.log file!"
              (LMS: Settings/Information)

              Comment


                Originally posted by piPlayer View Post
                After getting Docker up and running on my WD MyCloud EX2 Ultra NAS, I was now able to successfully install the LMS container as well.

                However, I have the same timezone problem with LMS 8.2, while LMS 8.1.2 works fine for me.

                Is there a workaround for this to get the latest version of LMS working?

                This is my docker install script:
                Code:
                docker run -it \
                -v "/shares/config":"/config":rw \
                -v "/shares/music":"/music":ro \
                -v "/shares/playlist":"/playlist":rw \
                -v "/etc/localtime":"/etc/localtime":ro \
                -v "/etc/timezone":"/etc/timezone":ro \
                -p 9002:9002/tcp \
                -p 9090:9090/tcp \
                -p 3483:3483/tcp \
                -p 3483:3483/udp \
                -e HTTP_PORT=9002 \
                lmscommunity/logitechmediaserver:stable
                In the meantime, I have found a solution myself. All I have to do is to start the container privileged with the following code:
                Code:
                docker run -it --privileged \
                -v "/shares/config":"/config":rw \
                -v "/shares/music":"/music":ro \
                -v "/shares/playlist":"/playlist":rw \
                -v "/etc/localtime":"/etc/localtime":ro \
                -v "/etc/timezone":"/etc/timezone":ro \
                -p 9002:9002/tcp \
                -p 9090:9090/tcp \
                -p 3483:3483/tcp \
                -p 3483:3483/udp \
                -e HTTP_PORT=9002 \
                lmscommunity/logitechmediaserver:stable


                Maybe it helps if someone has a similar problem.
                Last edited by piPlayer; 2023-02-22, 07:25.

                Comment


                  This is the Dockerfile i use based on Alpine:

                  FROM alpine:latest

                  #SHELL ["/bin/ash", "-eo", "pipefail", "-c"]

                  RUN apk add --no-cache curl \
                  && curl -Ls http://www.sodface.com/repo/sodface-pub-key.tar.gz | tar -C /etc/apk/keys/ -xvz [email protected] \
                  && echo http://www.sodface.com/repo >> /etc/apk/repositories \
                  && apk update \
                  && apk upgrade --available \
                  && apk add --no-cache espeak \
                  faad2 \
                  flac \
                  ffmpeg \
                  lame \
                  lms \
                  perl-crypt-cbc \
                  perl-data-peek \
                  perl-dev \
                  sox \
                  tzdata \
                  wavpack \
                  && cp /usr/share/zoneinfo/Europe/Zurich /etc/localtime \
                  && echo 'Europe/Zurich' > /etc/timezone \
                  && apk del curl

                  # STS Profiles
                  ADD --chown=lms:nogroup https://www.nexus0.net/pub/sw/lmsann...sprofiles.json /usr/local/etc/

                  USER lms
                  VOLUME /config
                  EXPOSE 3483 3483/udp 9000

                  ENTRYPOINT ["/usr/bin/perl"]
                  CMD ["/opt/lms/slimserver.pl", "--cachedir", "/config/cache", "--logdir", "/config/logs", "--prefsdir", "/config/prefs"]​
                  And using rootless podman

                  Comment


                    Can other folks confirm - my docker LMS installations (using the official LMS Docker image) work perfectly, but I do note that discovery of these servers by players etc does not seem to work - I have to manually enter the IP address, and then all is well. I can see some discussion from some time ago, but would like this expected, and not just some problem with my installations...

                    Comment


                      Did you check the port mapping settings? There’s the discovery port (3483?) which needs to be mapped for both tcp and udp.
                      Michael

                      "It doesn't work - what shall I do?" - "Please check your server.log and/or scanner.log file!"
                      (LMS: Settings/Information)

                      Comment


                        If using a bridge, the discovery will not work, (broadcast isn't working on docker driver bridge). It's either you use the bridge and you will need to configure all your clients accordingly, either you start your container with network mode host

                        Comment


                          Using docker compose, this is what I have:

                          Code:
                              lms:
                                  container_name: lms
                                  image: lmscommunity/logitechmediaserver:dev      
                                  environment:
                                      - PUID=${UID}
                                      - PGID=${GUID}
                                  volumes:
                                      - /etc/localtime:/etc/localtime:ro
                                      - /etc/timezone:/etc/timezone:ro
                                      - ${LMS_MUSIC}:/music:ro
                                      - ${LMS_CONFIG}:/config:rw
                                      - ${LMS_PLAYLISTS}:/playlist:rw
                                  ports:
                                      - 9000:9000/tcp
                                      - 9090:9090/tcp
                                      - 3483:3483/tcp
                                      - 3483:3483/udp
                                  restart: unless-stopped​
                          I am indeed using Bridge. Is it recommended to use host mode then? I don't know that much about the docker network modes - I have a bunch of other containers, none of which need a special network mode. But I suppose I could...

                          (Living without discovery is not a major problem, just a mild frustration when setting up new things).
                          Last edited by bossanova808; 2023-02-26, 00:35.

                          Comment


                            Originally posted by bossanova808 View Post
                            I am indeed using Bridge. Is it recommended to use host mode then? I don't know that much about the docker network modes - I have a bunch of other containers, none of which need a special network mode.
                            Do any of your other Docker containers have remote clients that use UDP broadcasts to find their related server?

                            Paul Webster
                            Author of "Now Playing" plugins covering Radio France (FIP etc), PlanetRadio (Bauer - Kiss, Absolute, Scala, JazzFM etc), KCRW, ABC Australia and CBC/Radio-Canada
                            and, via the extra "Radio Now Playing" plugin lots more - see https://forums.slimdevices.com/showt...Playing-plugin

                            Comment


                              Originally posted by Paul Webster View Post
                              Do any of your other Docker containers have remote clients that use UDP broadcasts to find their related server?
                              I guess not! I have other, similar sorts of media playback clients (Kodi) - talking to servers (e.g. MySQL), but yes, those all needed to be manually pointed the servers.

                              So in all, it's expected that Discovery won't work, unless one uses host mode. That's the answer I needed, and I can decide from there whether it's worth using host mode. Thanks!

                              Comment


                                I already say it somewhere,:
                                If using a bridge, the discovery will not work, (broadcast isn't working on docker driver bridge). Meaning that you will need to configure all your clients accordingly.

                                Comment

                                Working...
                                X