MinimServer

Home

Features

MinimServer 2.2

License options

Downloads

Release notes

Quick start

MinimWatch

User guide

Support

Troubleshooting

Forum

MinimStreamer

License terms

UPnP and DLNA

Technology

Contact

Latest news

(2024/04/14) Configuration status web page updated automatically

Latest change

(2024/04/14) MinimServer 2.2 update 250 has been released

Running MinimServer 2 in a Docker or LXC container

Table of contents

Updating an existing MinimServer container
Running MinimServer 2 in a Docker container on a QNAP NAS
Docker instructions for QNAP Container Station version 3
Docker instructions for QNAP Container Station version 2
Running MinimServer 2 in a Docker container on a Synology NAS
Running MinimServer 2 in a Docker container on Linux
Running MinimServer 2 in an LXC container on a QNAP NAS
Running MinimServer 2 in an LXC container on Linux

This page explains how you can run MinimServer in a Docker or LXC container on a QNAP or Synology NAS or on some other Linux host. Running MinimServer in a container enables you to run multiple instances of MinimServer with different configuration settings on the same NAS or Linux host. QNAP Container Station supports both Docker and LXC containers. The Synology Docker package supports Docker containers only.

Updating an existing MinimServer container

[NEW] If you are running MinimServer 2.1 or 2.1.2 in a container, the simplest way to update the container to MinimServer 2.2 is to use the new "update install." For details, see the Update install section.

Alternatively, you can install MinimServer 2.2 in a new container by following the instructions below.

Running MinimServer 2 in a Docker container on a QNAP NAS

  1. Install the QNAP Container Station package on your QNAP NAS if it isn't already installed
  2. Install the MinimServer QNAP package on your QNAP NAS if it isn't already installed. For details of how to do this, see the Installing MinimServer 2 on a QNAP NAS page.
  3. After installing the MinimServer QNAP package, start the MinimServer package with an internet connection available. This creates a file named minimserver-starter.license in the MinimServer/data directory. After this file has been created, you can stop the MinimServer package if you don't want to run MinimServer as a native QNAP package.
  4. Check the list of QNAP models and processor types in this section to identify the processor type for your NAS.
  5. Start and open Container Station
  6. If you are running Container Station 3.0 or later, follow the instructions in this section. For earlier versions of Container Station, follow the instructions in this section.
  7. The newly created container should be visible in MinimWatch if you have this running. When MinimServer has finished its initial scan of your music library (this might take some time), it should be visible to UPnP control points. The default display name is suffixed with ".2" to distinguish it from the native MinimServer instance running on the NAS.
  8. A MinimServer instance running in a Docker container on a QNAP NAS shares the full or trial license of the container host. For more information, see the MinimServer 2 licensing for Linux containers section.

Docker instructions for QNAP Container Station version 3

  1. In Container Station, click Images and select Pull
  2. In the Image field of the "Pull image" dialog, enter minimworld/minimserver: if your NAS has an Intel or AMD processor; or enter minimworld/minimserver:-arm64 if your NAS has an ARMv8 processor; or enter minimworld/minimserver:-arm if your NAS has an ARMv7 processor.
  3. Click Pull. After a short time, you should see the image "minimworld/minimserver " appear in the list of images.
  4. You will also see a pop-up saying that no background tasks are running. Click elsewhere in the window to make this pop-up disappear.
  5. Click the triangle symbol in the Actions column for this image. In the Create Container dialog, click Next to show the Configure Container page.
  6. Click Advanced Settings. On the Advanced Settings page, select Networks and change Network mode from Default (NAT) to Custom > Host (ignoring the warning message)
  7. Click the Apply button. If you don't do this, the setting you have entered will be lost.
  8. Click Advanced Settings again. On the Advanced Settings page, select Storage. Click the downward-pointing triangle next to the Add Volume button. and select Bind Mount Host Path. Two empty fields Host and Container will appear.
  9. In the Host field, use the folder icon to select the MinimServer folder. In the Container field below the Host field, enter /MinimServer and change the RW setting to RO.

    Note: This step is essential. If you don't do this, MinimServer will show an error message "MinimServer shared folder on host is not shared with this container".

  10. Select Bind Mount Host Path again. Two more empty fields Host and Container will appear. In the Host field, use the folder icon to select your QNAP music library folder. In the Container field below the Host field, enter /Music and change the RW setting to RO.
  11. Click the Apply button. If you don't do this, the settings you have entered will be lost.
  12. The default timezone for the container is GMT. If you want to change this, select Environments on the Advanced Settings page and add a new environment variable with name TZ and a timezone name such as Europe/London, Australia/Brisbane, etc. For a list of valid timezone names, see the TZ column on this page.
  13. Click the Next button, then click Finish on the Summary page. After a short time, you will see a pop-up telling that no background tasks are running. Click elsewhere in the window to make this pop-up disappear. The MinimServer container should start and appear in the Containers section.
  14. You can start additional MinimServer containers by repeating the above steps, starting with step 5
  15. To stop a MinimServer container, select the Containers section and click the gear-wheel icon for the container, then select Stop
  16. To restart a stopped MinimServer container, select the Containers section and click the gear-wheel icon for the container, then select Start
  17. To remove a MinimServer container, select the Containers section and click the gear-wheel icon for the container, then select Remove

Docker instructions for QNAP Container Station version 2

  1. In Container Station, click Images and select Pull
  2. In the "Pull image from registry" dialog, enter minimworld/minimserver in the Image Name field
  3. If your NAS has an Intel processor, enter in the Image Version field. If your NAS has an ARMv8 processor, enter -arm64 in the Image Version field. If your NAS has an ARMv7 processor, enter -arm in the Image Version field.
  4. Click Pull. After a short time, you should see the image "minimworld/minimserver " appear in the list of images.
  5. Click the + symbol in the Actions column for this image
  6. On the Advanced Settings page, select Network and change the network mode to Host (ignoring the warning message)
  7. On the Advanced Settings page, select Shared Folders
  8. On the Shared Folders page, create a "Volume from host" mapping from the /MinimServer folder to the Mount Point /MinimServer

    Note: This step is essential. If you don't do this, MinimServer will show an error message "MinimServer shared folder on host is not shared with this container".

  9. On the Shared Folders page, create a "Volume from host" mapping from your QNAP music library folder to the Mount Point /Music
  10. Uncheck the 'write' boxes for both these shared folders
  11. The default timezone for the container is GMT. If you want to change this, select Environment on the Advanced Settings page and add a new environment variable with name TZ and a timezone name such as Europe/London, Australia/Brisbane, etc. For a list of valid timezone names, see the TZ column on this page.
  12. Click the Create button, then click OK on the Summary page. The MinimServer container should start and appear in the Overview section.
  13. You can start additional MinimServer containers by repeating the above steps, starting with step 5
  14. To stop a MinimServer container, click the stop icon (black square) in the Actions column for the container
  15. To restart a stopped MinimServer container, click the start icon (black triangle) in the Actions column for the container
  16. To remove a MinimServer container, click the x symbol in the Actions column for the container

Running MinimServer 2 in a Docker container on a Synology NAS

  1. Install the Synology Docker package on your Synology NAS if it isn't already installed
  2. Install the MinimServer package on your Synology NAS if it isn't already installed. For details of how to do this, see the Installing MinimServer 2 on a Synology NAS page.
  3. After installing the MinimServer Synology package, start the MinimServer package with an internet connection available. This creates a file named minimserver-starter.license in the MinimServer/appData directory. After this file has been created, you can stop the MinimServer package if you don't want to run MinimServer as a native Synology package.
  4. Start and open the Docker package
  5. Select Registry
  6. In the search box, type minimworld and click the Search button
  7. An item minimworld/minimserver should appear. Double-click this item.
  8. If you are prompted to choose a tag, select and click the Select button
  9. You should see the image "minimworld/minimserver:" appear in the Image section and start to download
  10. When the image has finished downloading, select this image and click the Launch button
  11. On the Network page, check the box 'Use the same network as Docker Host'
  12. On the General Settings page, enter a suitable name in the 'Container Name' field. This name will be part of the default display name for MinimServer.
  13. The default timezone for the container is GMT. If you want to change this, click Advanced Settings and add a new environment variable with name TZ and a timezone name such as Europe/London, Australia/Brisbane, etc. After adding this enviroment variable, click the Save button. For a list of valid timezone names, see the TZ column on this page.
  14. On the Volume Settings page, click Add Folder, select the shared folder for your music library and click the Select button
  15. Type /Music in the 'Mount path' field and check the Read-Only box
  16. Click Add Folder again, select the MinimServer shared folder and click the Select button
  17. Type /MinimServer in the 'Mount path' field and check the Read-Only box
  18. Click the Next button. On the Summary page, make sure the 'Run this container' box is checked and click the Done button.
  19. The MinimServer container should start and appear in the Container section. It should also appear in MinimWatch if you have this running. When MinimServer has finished its initial scan of your music library (this might take some time), it should be visible to UPnP control points. The default display name is suffixed with ".2" to distinguish it from the native MinimServer instance running on the NAS.
  20. You can start additional MinimServer containers by repeating the above steps, starting with step 9
  21. To stop a MinimServer container, click the stop icon (black square) in the Actions column for the container
  22. To restart a stopped MinimServer container, click the start icon (black triangle) in the Actions column for the container
  23. To remove a MinimServer container, click the x symbol in the Actions column for the container
  24. A MinimServer instance running in a Docker container on a Synology NAS shares the full or trial license of the container host. For more information, see the MinimServer 2 licensing for Linux containers section.

Running MinimServer 2 in a Docker container on Linux

  1. Install Docker on your Linux system if it isn't already installed
  2. To download the official MinimServer image for Intel or AMD, run this command:
    docker pull minimworld/minimserver:
    For the ARM 64-bit version of the image, use this command instead:
    docker pull minimworld/minimserver:-arm64
    For the ARM 32-bit version of the image, use this command instead:
    docker pull minimworld/minimserver:-arm
  3. To create a MinimServer container, run this command:
    docker create -v host-content-dir:/Music:ro --network host --name container-name minimserver:
    where host-content-dir is the path to your music library on the host Linux system and container-name is the name you want to use for the MinimServer container. Mounting your host music library as /Music enables MinimServer to find it automatically. Alternatively, you can use a different mount pount or mount additional library folders. If you do this, you will need to set the contentDir property using MinimWatch after you have started MinimServer.
  4. The default timezone for the container is GMT. If you want to change this, add the -e option to the docker create command to set the environment variable TZ to a timezone name such as Europe/London, Australia/Brisbane, etc. For example, to set the timezone to Australia/Brisbane, you would specify -e TZ=Australia/Brisbane. For a list of valid timezone names, see the TZ column on this page.
  5. To start the container, run this command:
    docker run -d container-name
    where container-name is the container name that you used in step 3.
  6. The MinimServer container should start and should appear in MinimWatch if you have this running. To verify that the container is running, use this command:
    docker container ls -a
  7. When MinimServer has finished its initial scan of your music library (this might take some time), it should be visible to UPnP control points. The default display name is suffixed with ".2" to distinguish it from a MinimServer instance you might be running on the host system. You can change this by setting the displayName property using MinimWatch.
  8. You can start additional MinimServer containers by repeating step 5
  9. To stop a MinimServer container, run this command:
    docker stop container-name
    where container-name is the container name that you used in step 3.
  10. To restart a stopped MinimServer container, repeat step 5
  11. To remove a MinimServer container, run this command:
    docker rm container-name
    where container-name is the container name that you used in step 3. It's best to stop the container first before removing it so that the container can notify other UPnP devices that it is stopping.

Running MinimServer 2 in an LXC container on a QNAP NAS

Unlike a Docker container that runs a single application such as MinimServer, LXC provides a Linux environment that can be used to install one or more applications. To create an LXC container and install MinimServer 2 in this container, do the following:

  1. Install the QNAP Container Station package on your QNAP NAS if it isn't already installed

    Note: The instructions in this section are for LXC on Container Station version 2, not LXD on Container Station version 3. Some changes to the following steps will be needed if you are using LXD.

  2. Install the MinimServer package on your QNAP NAS if it isn't already installed. For details of how to do this, see the Installing MinimServer 2 on a QNAP NAS page.
  3. After installing the MinimServer QNAP package, start the MinimServer package with an internet connection available. This creates a file named minimserver-starter.license in the MinimServer/data directory. After this file has been created, you can stop the MinimServer package if you don't want to run MinimServer as a native QNAP package.
  4. Using another computer, open the MinimServer 2 Downloads page, find the Linux row in the table of MinimServer downloads and click the Intel download link.
  5. Accept the license and download the archive file. The downloaded file is . Copy this file to the Public shared folder of your QNAP NAS.
  6. Start and open Container Station
  7. Click Create, then scroll down to the end of the list of available images
  8. Select the Debian LXC image and click Install. Alternatively, you can install an Ubuntu or Fedora LXC image.
  9. In the Create Container dialog, select Advanced Settings
  10. On the Advanced Settings page, enter a name in the Container Hostname field. This name will be part of the default display name for MinimServer.
  11. On the Advanced Settings page, click Network Mode and select Bridge, leaving other settings as the defaults that appear when you do this
  12. On the Advanced Settings page, select Shared Folders
  13. On the Shared Folders page, create a mapping for your QNAP music library folder to the mount point /Music
  14. On the Shared Folders page, create a mapping for the /MinimServer folder to the mount point /MinimServer
  15. On the Shared Folders page, create a mapping for the /Public folder to the mount point /Public
  16. Uncheck the 'write' boxes for all these shared folders
  17. The default timezone for the container is GMT. If you want to change this, select Environment on the Advanced Settings page and add a new environment variable with name TZ and a timezone name such as Europe/London, Australia/Brisbane, etc. For a list of valid timezone names, see the TZ column on this page.
  18. Click the Create button, then click OK on the Summary page
  19. After some time (be patient), the Debian container should start and appear in the Overview section
  20. Click the container name. A window will open that includes a Console section. Wait for a command prompt with a # symbol to appear in the Console section.
  21. Click the arrows next to the word Console to open a separate window for the Console.
  22. To run MinimServer, you need to have Java installed. To install Java, run the command apt update followed by the command apt install default-jre-headless. When prompted, enter Y.
  23. Unpack the MinimServer archive by entering the command tar xf /Public/ -C /opt
  24. Start MinimServer by entering the command /opt/minimserver/bin/startd
  25. MinimServer should start and should appear in MinimWatch if you have this running. When MinimServer has finished its initial scan of your music library (this might take some time), it should be visible to UPnP control points.
  26. To configure MinimServer to start automatically when the container is started, enter the command /opt/minimserver/bin/setup enable_autostart
  27. For more information about installing and running MinimServer on Linux (without a graphical desktop), see this page.
  28. To stop the container, click the stop icon (black square) in the Actions column for the container
  29. To restart the stopped container, click the start icon (black triangle) in the Actions column for the container. If you have configured MinimServer to start automatically (see above), MinimServer will start.
  30. To remove the container, click the x symbol in the Actions column for the container
  31. A MinimServer instance running in an LXC container on a QNAP NAS shares the full or trial license of the container host. For more information, see the MinimServer 2 licensing for Linux containers section.

Running MinimServer 2 in an LXC container on Linux

Unlike a Docker container that runs a single application such as MinimServer, LXC provides a Linux environment that can be used to install one or more applications. To create an LXC container on a Linux Intel system and install MinimServer 2 in this container, do the following:

  1. Install LXC on your Linux system if it isn't already installed

    Note: The instructions in this section are for LXC, not LXD. Some changes to the following steps will be needed if you are using LXD.

  2. Open the MinimServer 2 Downloads page, find the Linux row in the table of MinimServer downloads and click the Intel download link.
  3. Accept the license and download the MinimServer archive file. The downloaded file is .
  4. Create an LXC container running Linux. For example, you can create a container for Debian Buster using the following command:
    lxc-create -t download -n container-name -- -d debian -r buster -a amd64
    where container-name is any name of your choosing.
  5. Mount your music library inside the container so that MinimServer can access it. For example, you can mount your music library as /Music inside the container by editing your container's config file to add the following line:
    lxc.mount.entry = host-content-dir Music none bind,ro,create=dir 0 0
    where host-content-dir is the path to your music library on the host Linux system. Mounting your host music library as /Music enables MinimServer to find it automatically. Alternatively, you can use a different mount pount or mount additional library folders. If you do this, you will need to set the contentDir property using MinimWatch after you have started MinimServer.
  6. The default timezone for the container is GMT. You can change this by editing your container's config file to add the following line:
    lxc.environment = TZ=timezone-name
    where timezone-name is a timezone name such as Europe/London, Australia/Brisbane, etc. For a list of valid timezone names, see the TZ column on this page.
  7. By default, LXC will run the container in its own network segment using the lxcbr0 bridge. This doesn't work for MinimServer because the UPnP protocol doesn't allow a different network segment (subnet) to communicate with a UPnP control point and renderer on your main subnet, so you won't be able to select and play music. Instead, you need to run the container using a host-shared bridge. There are instructions for setting this up on this section and on this page. After you have done this and checked that your machine can still access the network, edit your container's config file to change the line starting lxc.network.link to this:
    lxc.network.link = br0
    assuming you have used the name br0 for your host-shared bridge.
  8. Start the container as a daemon by running this command:
    lxc-start -n container-name -d
    where container-name is the container name that you used in step 4.
  9. Attach a shell to the running container by running this command:
    lxc-attach -n container-name -- "/bin/sh"
    where container-name is the container name that you used in step 4.
  10. To run MinimServer, you need to have Java installed. To install Java, run these commands:
    apt update
    apt install default-jre-headless
    in your attached shell. When prompted, enter Y.
  11. Copy the MinimServer archive file that you downloaded in step 3 into the container and unpack it to the /opt directory by entering the command tar xf -C /opt
    in your attached shell.
  12. Start MinimServer by entering the command:
    /opt/minimserver/bin/startd
    in your attached shell.
  13. MinimServer should start and should appear in MinimWatch if you have this running. When MinimServer has finished its initial scan of your music library (this might take some time), it should be visible to UPnP control points.
  14. To configure MinimServer to start automatically when the container is started, enter the command: /opt/minimserver/bin/setup enable_autostart
    in your attached shell.
  15. For more information about installing and running MinimServer on Linux (without a graphical desktop), see this page.
  16. To stop the container, run this command (in a host terminal window, not in the attached shell):
    lxc-stop -n container-name
    where container-name is the container name that you used in step 4.
  17. To restart a stopped container, repeat step 8
  18. To destroy the container, run this command:
    lxc-destroy -n container-name
    where container-name is the container name that you used in step 4.

Running MinimServer 2 in an LXD container on a QNAP NAS

Unlike a Docker container that runs a single application such as MinimServer, LXD provides a Linux environment that can be used to install one or more applications. To create an LXD container and install MinimServer 2.2 in this container, do the following:

  1. Install the QNAP Container Station package on your QNAP NAS if it isn't already installed

    Note: The instructions in this section are for LXD on Container Station version 3.

  2. Install the MinimServer package on your QNAP NAS if it isn't already installed. For details of how to do this, see the Installing MinimServer 2 on a QNAP NAS page.
  3. After installing the MinimServer QNAP package, start the MinimServer package with an internet connection available. This creates a file named minimserver-starter.license in the MinimServer/data directory. After this file has been created, you can stop the MinimServer package if you don't want to run MinimServer as a native QNAP package.
  4. Using another computer, open the MinimServer 2 Downloads page, find the Linux row in the table of MinimServer downloads and click the Intel/AMD download link.
  5. Accept the license and download the archive file. The downloaded file is . Copy this file to the Public shared folder of your QNAP NAS.
  6. Start and open Container Station
  7. **v3 start here
  8. ** Click the Explore button
  9. ** Type Debian into the search field and press the Enter key
  10. ** Select LXD Image Server
  11. ** Scroll down to debian bookworm and click Deploy, then click OK to confirm
  12. In the Create Container dialog, select Advanced Settings
  13. On the Advanced Settings page, click Network Mode and select Bridge, leaving other settings as the defaults that appear when you do this
  14. On the Advanced Settings page, enter a name in the Hostname field. This name will be part of the default display name for MinimServer.
  15. Click the Apply button. If you don't do this, the setting you have entered will be lost.
  16. Click Advanced Settings again. On the Advanced Settings page, select Storage and click the Add button. Two empty fields Host and Container will appear.
  17. In the Host field, use the folder icon to select the MinimServer folder. In the Container field below the Host field, enter /MinimServer and change the RW setting to RO.

    Note: This step is essential. If you don't do this, MinimServer will show an error message "MinimServer shared folder on host is not shared with this container".

  18. Click the Add button again. Two more empty fields Host and Container will appear. In the Host field, use the folder icon to select your QNAP music library folder. In the Container field below the Host field, enter /Music and change the RW setting to RO.
  19. Click the Apply button. If you don't do this, the settings you have entered will be lost.
  20. Click the Next button, then click Finish on the Summary page. After some time (be patient), you will see a pop-up telling that no background tasks are running. Click elsewhere in the window to make this pop-up disappear. The Debian container should now appear as Running in the Containers section.
  21. For v3 LXD, do the following:
  22. On the Advanced Settings page, select Shared Folders
  23. On the Shared Folders page, create a mapping for your QNAP music library folder to the mount point /Music
  24. On the Shared Folders page, create a mapping for the /MinimServer folder to the mount point /MinimServer
  25. On the Shared Folders page, create a mapping for the /Public folder to the mount point /Public
  26. Uncheck the 'write' boxes for all these shared folders
  27. **v2 start here
  28. **v2 Click Create, then scroll down to the end of the list of available images
  29. **v2 Select the Debian LXC image and click Install. Alternatively, you can install an Ubuntu or Fedora LXC image.
  30. In the Create Container dialog, select Advanced Settings
  31. On the Advanced Settings page, enter a name in the Container Hostname field. This name will be part of the default display name for MinimServer.
  32. On the Advanced Settings page, click Network Mode and select Bridge, leaving other settings as the defaults that appear when you do this
  33. On the Advanced Settings page, select Shared Folders
  34. On the Shared Folders page, create a mapping for your QNAP music library folder to the mount point /Music
  35. On the Shared Folders page, create a mapping for the /MinimServer folder to the mount point /MinimServer
  36. On the Shared Folders page, create a mapping for the /Public folder to the mount point /Public
  37. Uncheck the 'write' boxes for all these shared folders
  38. The default timezone for the container is GMT. If you want to change this, select Environment on the Advanced Settings page and add a new environment variable with name TZ and a timezone name such as Europe/London, Australia/Brisbane, etc. For a list of valid timezone names, see the TZ column on this page.
  39. Click the Create button, then click OK on the Summary page
  40. After some time (be patient), the Debian container should start and appear in the Overview section
  41. In the Containers section, click the container name. A window will open that includes an Execute button. Click this button.
  42. An Execute Console window will open. In this window, click Execute.
  43. A small command prompt window will open. , then clikc Wait for a command prompt with a # symbol to appear in the Console section.
  44. Click the arrows next to the word Console to open a separate window for the Console.
  45. To run MinimServer, you need to have Java installed. To install Java, run the command apt update followed by the command apt install default-jre-headless. When prompted, enter Y.
  46. Unpack the MinimServer archive by entering the command tar xf /Public/ -C /opt
  47. Start MinimServer by entering the command /opt/minimserver/bin/startd
  48. MinimServer should start and should appear in MinimWatch if you have this running. When MinimServer has finished its initial scan of your music library (this might take some time), it should be visible to UPnP control points.
  49. To configure MinimServer to start automatically when the container is started, enter the command /opt/minimserver/bin/setup enable_autostart
  50. For more information about installing and running MinimServer on Linux (without a graphical desktop), see this page.
  51. To stop the container, click the stop icon (black square) in the Actions column for the container
  52. To restart the stopped container, click the start icon (black triangle) in the Actions column for the container. If you have configured MinimServer to start automatically (see above), MinimServer will start.
  53. To remove the container, click the x symbol in the Actions column for the container
  54. A MinimServer instance running in an LXC container on a QNAP NAS shares the full or trial license of the container host. For more information, see the MinimServer 2 licensing for Linux containers section.