tinyMediaManager offers an (experimental) official docker image based on Debian Buster (for maximum compatibility). This image includes all needed components (up to date libmediainfo, FFmpeg, …) for the best experience. This image should work on any x86_64 device.
Using this image, you will get a fully working instance of tinyMediaManager which is accessible remotely (via web/VNC).
- Map any local port to
4000for web access (via noVNC)
- Map a local volume/folder to
/datawhere all local data from tinyMediaManager is stores (like
- Map local volumes/folders/mounts to
/media/xxxwhere all media will be accessed. E.g.:
- /mnt/movies -> /media/movies
- /mnt/tvshows -> /media/tvshows
Sample run command:
docker run \
-p 4000:4000 \
-v </path/to/local/data/>:/data \
-v </path/to/movies>:/media/movies \
-v </path/to/tvshows>:/media/tvshows \
After starting the container, you can access tinyMediaManager via
You should map the following folders to a volume/folder on the host:
/data: where all local data of tinyMediaManager will be stores. If you do not map this out of the container, all your data/settings will be lost on an upgrade of tinyMediaManager
/media: contains all your data sources
You need read/write access to all mapped volumes!
This image offers some special configuration parameters which can be passed to docker by using environment variables
|ID of the user tinyMediaManager runs as. See below for an example how to use this.
|ID of the group tinyMediaManager runs as. See below for an example how to use this.
|Password for remote access
When using using data volumes (-v flags for
media), permissions issues can occur between the host and the container (tinyMediaManager). For example, the user within the container may not exist on the host or does not match the right user on the host. This could prevent the container from properly accessing files and folders on the shared volume and vice versa. To avoid any problem, you can specify the user tinyMediaManager should run as.
This is done by passing the user ID and group ID to the container via the
GROUP_ID environment variables.
To find the right IDs to use, issue the following command on the host, with the user owning the data volume on the host:
Which gives an output like this one:
uid=1000(myuser) gid=1000(myuser) groups=1000(myuser),4(adm),24(cdrom),27(sudo),46(plugdev),113(lpadmin)
The value of
uid (user ID) and
gid (group ID) are the ones that you should be given the container.
Because of security restrictions in the browser, your client clipboard cannot be synchronized to the clipboard of tinyMediaManager. To copy data from/to the remote connection of tinyMediaManager, you need to invoke the clipboard feature from noVNC. Just open the control panel of noVNC from the left side of the window and use the clipboard feature from there to copy the data.