Dim

Dim

Docker app from MyFaith's Repository

Overview

Dim is a self-hosted media manager. With minimal setup, Dim will organize and beautify your media collections, letting you access and play them anytime from anywhere

Dim

Dashboard Discord

Dim is a self-hosted media manager. With minimal setup, Dim will organize and beautify your media collections, letting you access and play them anytime from anywhere.

Running from binaries

Dependencies

  • libva2
  • libva-drm2
  • libharfbuzz
  • libfontconfig
  • libfribidi
  • libtheora
  • libvorbis
  • libvorbisenc
  • libtheora0

You can then obtain binaries from the release tab in github:

  1. Unpack with unzip ./release-linux.zip && tar -xvzf ./release.tar.gz
  2. Run cd release && ./dim
  3. Then you can access the Dim web UI through your browser with http://0.0.0.0:8000 (assuming it's running locally.)

Running with docker

The following command runs dim on port 8000, storing configuration in $HOME/.config/dim. You may change that path if you'd like to store configuration somewhere else. You can mount as many directories containing media as you like by repeating the -v HOST_PATH:CONTAINER_PATH option. In this example, the path /media on the host is made available at the same path inside the Docker container. This name "media" is arbitrary and you can choose whatever you like.

docker run -d -p 8000:8000/tcp -v $HOME/.config/dim:/opt/dim/config -v /media:/media:ro ghcr.io/dusk-labs/dim:dev

Mutiarch image resides at ghcr.io/dusk-labs/dim:master

To use hardware acceleration, mount the relevant device:

docker run -d -p 8000:8000/tcp -v $HOME/.config/dim:/opt/dim/config -v /media:/media:ro --device=/dev/dri/renderD128 ghcr.io/dusk-labs/dim:dev

Refer to docker-compose-template.yaml to run dim using Docker Compose.

Running from source

Dependencies

To run from source, you'll first need to install the following dependencies on your system:

  • sqlite
  • cargo
  • rustc (nightly)
  • yarn, npm
  • libssl-dev
  • libva2 (only if you're using Linux)
  • libva-dev (only if you're using Linux)
  • libva-drm2 (only if you're using Linux)
  • ffmpeg

Once the dependencies are installed, clone the repository and build the project:

git clone https://github.com/Dusk-Labs/dim
yarn --cwd ui/ && yarn --cwd ui/ build
mkdir utils && ln -nfs $(which ffmpeg) utils/ffmpeg && ln -nfs $(which ffprobe) utils/ffprobe

If you're on Linux, run dim with:

cargo run --features vaapi --release

On other platforms where libva isn't available, run dim with:

cargo run --release

License

Dim is licensed under the AGPLv3 license (see LICENSE.md or https://opensource.org/licenses/AGPL-3.0)

Screenshots

Login_Page Add_Library Modal Media_Page

Install Dim on Unraid in a few clicks.

Find Dim in Community Apps on your Unraid server, review the template, and click Install. Unraid handles the Docker app or plugin setup from the published template.

Open the Apps tab on your Unraid server Search Community Apps for Dim Review the template variables and paths Click Install

Related apps

Explore more like this

Explore all

Details

Repository
ghcr.io/dusk-labs/dim:dev
Last Updated2026-07-14
First Seen2022-02-14

Runtime arguments

Web UI
http://[IP]:[PORT:8000]
Network
bridge
Shell
sh
Privileged
false

Template configuration

Web UI PortPorttcp

Web UI Port

Target
8000
Default
8000
Value
8000
Media PathPathrw

Media Path

Target
/media
Value
/mnt/user/media/
Graphics Card PathDevice

Graphics Card Path

Value
/dev/dri
Config PathPathrw

Config Path

Target
/opt/dim/config
Default
/mnt/user/appdata/dim
Value
/mnt/user/appdata/dim