Skip to main content

LMS

LMS is a self-hosted music streaming software. See official website⁠.

Usage

In order to run this LMS image, you will have to use at least two volumes:

  1. Working data (write access rights).
  2. Music directory to be scanned (read-only access rights), add a volume for each library you want to scan.

Note: make sure to run the docker container using an unprivileged user

Example:

docker run \ --restart=unless-stopped \ --user <user_id:group_id> \ -p <port>:5082 \ -v <path_to_music>:/music:ro \ -v <path_to_persistent_data>:/var/lms:rw \ epoupon/lms

In the LMS administration interface, add /music as a library (you can add as many libraries as necessary).

Custom configuration file

LMS uses a default configuration file, see https://github.com/epoupon/lms/blob/master/conf/lms.conf⁠.

You can specify a custom configuration file using the first argument of the entrypoint executable.

Example 1: Adding a configuration file in the persistent folder
copy lms/conf/lms.conf <path_to_persistent_data>/lms-custom.conf docker run \ --restart=unless-stopped \ --user <user_id:group_id> \ -p <port>:5082 \ -v <path_to_music>:/music:ro \ -v <path_to_persistent_data>:/var/lms:rw \ epoupon/lms /var/lms/lms-custom.conf
Example 2: using a dedicated volume
copy lms/conf/lms.conf <path_to_custom_conf_file>/lms-custom.conf docker run \ --restart=unless-stopped \ --user <user_id:group_id> \ -p <port>:5082 \ -v <path_to_music>:/music:ro \ -v <path_to_persistent_data>:/var/lms:rw \ -v <path_to_custom_conf_file>/lms-custom.conf:/etc/lms-custom.conf:ro \ epoupon/lms /etc/lms-custom.conf
Docker-compose
services:
  lms:
    restart: unless-stopped
    environment:
      - PUID=998
      - PGID=100
    ports:
      - 2805:5082
    volumes:
      - /path/to/Music/:/music:ro
      - /path/to/Files/LMS:/var/lms:rw
    image: epoupon/lms
networks: {}