DUMB

DUMB

Docker app from UnJustice's Repository

Overview

This is an Unraid Docker template for: Debrid Unlimited Media Bridge https://github.com/I-am-PUID-0/DUMB/ Debrid Unlimited Media Bridge (DUMB) is an All-In-One (AIO) docker image for the unified deployment of the following projects/tool (more are being added)s: cli_debrid, dmbdb, Decypharr, pgAdmin4, phalanx_db, plex_debrid, Plex Media Server, PostgreSQL, rclone, Riven, Zilean, Zurg Links to all projects here: https://github.com/I-am-PUID-0/DUMB#-projects-included This project and many of the underlying projects are all very much "works in progress." You need to read documentation at the provided repos in order to make things work. If you can't figure something out, you can join the discord server linked in the support section of the template and ask for help. One quick note: As of recent updates, you can access services using an internal webUI. This means you can avoid, in some cases, exposing ports. Consider using it. Another note on ports: As this project has grown, it has become unweidly to add every single port to this template. Also suboptimal. All ports in the template should be considered examples based on my personal usage. You may need to add some or you may not need the ones provided. Add or remove as you need. A list of all the ports associated with various projects are in the DUMB GitHub linked above.

🎬 Debrid Unlimited Media Bridge 🎬

DUMB

📜 Description

Debrid Unlimited Media Bridge (DUMB) is an All-In-One (AIO) Docker image for building and operating a complete automated media stack from one container. It brings together Debrid and Usenet workflows, Arr automation, media servers, request/watchlist tools, service management, logs, metrics, updates, and embedded service UIs behind a guided setup experience.

DUMB is designed to reduce the glue work that usually comes with multi-service media deployments. You can choose the services that fit your workflow, let DUMB wire the required dependencies, manage them from the DUMB dashboard, and optionally expose selected UIs or public routes through the bundled Traefik access layer.

📦 Projects Included

You are free to use whichever components you like. Not all are required, and some may provide overlapping functionality in different ways.

Project Author Community / Docs / Support 🍻 Support Dev
AltMount javi11 DocsIssues
Bazarr Bazarr Team DocsIssues Donate
cli_debrid godver3 Discord Sponsor
dmbdb nicocapalbo Issues
Decypharr Mukhtar Akere DocsIssues Sponsor
Emby Media Server Emby, LLC Support Donate (via Emby Premiere)
Jellyfin Media Server Jellyfin Team DocsSupport Donate
NeutArr I-am-PUID-0 Issues Donate
Lidarr Lidarr Team DocsDiscord Sponsor
NzbDAV (DUMB default fork) nzbdav Fork docsFork issuesOriginal repository
Profilarr Dictionarry Hub DocsIssues Sponsor
pgAdmin 4 pgAdmin Team DocsSupport Donate
phalanx_db godver3 Discord Sponsor
Plex Media Server plexinc Support Donate (via Plex Pass)
Pulsarr jamcalli DocsIssues Support
Seerr Seerr Team DocsIssues Sponsor
Tautulli Tautulli DocsIssues Donate
Traefik Proxy Admin I-am-PUID-0 DocsIssues Sponsor
cloudflared Cloudflare DocsIssues
PostgreSQL Michael Stonebraker Docs Donate
Prowlarr Prowlarr Team DocsDiscord Sponsor
Radarr Radarr Team DocsDiscord Sponsor
rclone Nick Craig-Wood Docs Sponsor
Riven Riven Media DiscordDiscussions Sponsor
Sonarr Sonarr Team DocsDiscord Sponsor
Whisparr Whisparr Team DocsDiscord Sponsor
Zilean iPromKnight DocsIssues Sponsor
Zurg yowmamasita Wiki Sponsor

🌟 Features

See the DUMB Docs for a full list of features and settings.

Integrated Access Layer

DUMB includes an optional access stack built around Traefik:

Layer What it does
DUMB embedded UI routes DUMB writes Traefik routes for service UIs such as Arrs, AltMount, Pulsarr, and Traefik Proxy Admin under /service/ui/<service>.
Traefik Proxy Admin Lets you create and protect your own host-based reverse proxy routes for services inside or outside DUMB.
cloudflared Runs the Cloudflare Tunnel connector so Cloudflare public hostnames can reach DUMB Traefik without direct port forwarding.

This keeps DUMB-owned service UI routing separate from user-managed public routes. You can manage services from the DUMB dashboard, publish only the hostnames you choose through Traefik Proxy Admin, and hand public traffic to Traefik through cloudflared when you do not want to expose local ports.

🐳 Docker Hub

A prebuilt image is hosted on Docker Hub.

🏷️ GitHub Container Registry

A prebuilt image is hosted on GitHub Container Registry.

🐳 Docker-compose

[!NOTE] The below "ports" section of the compose should be updated based on the service ports used when needing to be exposed. See the below Default Ports Used section for more details

services:
  DUMB:
    container_name: DUMB
    image: iampuid0/dumb:latest
    stop_grace_period: 30s
    shm_size: 128mb
    stdin_open: true
    tty: true
    volumes:
      - /home/username/docker/DUMB/config:/config
      - /home/username/docker/DUMB/log:/log
      - /home/username/docker/DUMB/data:/data
      - /home/username/docker/DUMB/mnt/debrid:/mnt/debrid
    environment:
      - TZ=
      - PUID=
      - PGID=
    ports:
      - "3005:3005"
    devices:
      - /dev/fuse:/dev/fuse:rwm
      - /dev/dri:/dev/dri
    cap_add:
      - SYS_ADMIN
    security_opt:
      - apparmor:unconfined

🌐 Environment Variables

The following table lists the required environment variables used by the container. The environment variables are set via the -e parameter or via the docker-compose file within the environment: section or with a .env file saved to the config directory. Value of this parameter is listed as <VARIABLE_NAME>=<Value>

Variables required by DUMB:

Variable Default Description
PUID 1000 Your User ID
PGID 1000 Your Group ID
TZ (null) Your time zone listed as Area/Location

See the .env.example

🌐 Default Ports Used

[!NOTE] The below examples are default and may be configurable with the use of additional environment variables.

The following table describes the ports used by the container. The mappings are set via the -p parameter or via the docker-compose file within the ports: section. Each mapping is specified with the following format: <HOST_PORT>:<CONTAINER_PORT>[:PROTOCOL].

Container port Protocol Description
5000 TCP CLI Debrid - Web UI accessible at the assigned port
5001 TCP CLI Battery - The API is accessible at the assigned port
8000 TCP DUMB API - The API is accessible at the assigned port
3005 TCP DUMB frontend - Web UI accessible at the assigned port
8282 TCP Decypharr - Web UI accessible at the assigned port
8096 TCP Emby Media Server - Web UI accessible at the assigned port (default HTTP)
8096 TCP Jellyfin Media Server - Web UI accessible at the assigned port (default HTTP)
8686 TCP Lidarr - Web UI accessible at the assigned port
8088 TCP AltMount - Web UI/API accessible at the assigned port
3000 TCP NzbDAV frontend - Web UI accessible at the assigned port
3003 TCP Pulsarr - Web UI accessible at the assigned port
6767 TCP Bazarr - Web UI accessible at the assigned port
3004 TCP Traefik Proxy Admin - Web UI/API accessible at the assigned port
18080 TCP Traefik - Reverse proxy entrypoint for embedded UIs and TPA-managed routes
18081 TCP Traefik - Dashboard/API used by Traefik Proxy Admin diagnostics
8080 TCP NzbDAV backend - The API is accessible at the assigned port
5050 TCP pgAdmin 4 - Web UI accessible at the assigned port
5055 TCP Seerr - Web UI accessible at the assigned port
8888 TCP Phalanx DB - The API is accessible at the assigned port
32400 TCP Plex Media Server - Web UI accessible at the assigned port
5432 TCP PostgreSQL - The SQL server is accessible at the assigned port
9696 TCP Prowlarr - Web UI accessible at the assigned port
9705 TCP NeutArr - Web UI accessible at the assigned port
7878 TCP Radarr - Web UI accessible at the assigned port
3000 TCP Riven frontend - Web UI accessible at the assigned port
8080 TCP Riven backend - The API is accessible at the assigned port
8989 TCP Sonarr - Web UI accessible at the assigned port
8181 TCP Tautulli - Web UI accessible at the assigned port
6868 TCP Profilarr - Web UI accessible at the assigned port
6969 TCP Whisparr - Web UI accessible at the assigned port
8182 TCP Zilean - The API and Web UI (/swagger/index.html) is accessible at the assigned port
9090 TCP Zurg - Web UI accessible at the assigned port

cloudflared does not expose a local web UI port. It opens an outbound Cloudflare Tunnel connection and forwards public hostname traffic to DUMB Traefik.

📂 Data Volumes

The following table describes the data volumes used by the container. The mappings are set via the -v parameter or via the docker-compose file within the volumes: section. Each mapping is specified with the following format: <HOST_DIR>:<CONTAINER_DIR>[:PERMISSIONS].

Container path Permissions Description
/config rw This is where the application stores the dumb_config.json and rclone.config
/log rw This is where the application stores its log files
/data rw This is where all services will store their data
/mnt/debrid rw This is where the symlinks and rclone mounts will be stored

📝 TODO

See the DUMB roadmap for a list of planned features and enhancements.

🚀 Deployment

DUMB allows for the simultaneous or individual deployment of any of the services

For additional details on deployment, see the DUMB Docs

🌍 Community

  • For questions related to DUMB, see the GitHub discussions
  • or create a new issue if you find a bug or have an idea for an improvement.
  • or join the DUMB discord server

Install DUMB on Unraid in a few clicks.

Find DUMB 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 DUMB Review the template variables and paths Click Install

Requirements

You probably no longer need to mess with the permissions. I have setup DUMB twice on unRAID now without a chown command. Everything has worked fine for me.

Download Statistics

74,346
Total Downloads
16,637
This Month
11,130
Avg / Month

Total Downloads Over Time

Loading chart...

Related apps

Explore more like this

Explore all

Details

Repository
iampuid0/dumb:latest
Last Updated2026-06-21
First Seen2025-07-01

Runtime arguments

Web UI
http://[IP]:[PORT:3005]
Network
bridge
Privileged
false
Extra Params
--shm-size=128MB -it --cap-add SYS_ADMIN --security-opt apparmor:unconfined

Template configuration

TimezoneVariable

Enter your timezone. List here: https://en.wikipedia.org/wiki/List_of_tz_database_time_zones

Target
TZ
DUMB configPathrw

Directory where your DUMB config file will be stored.

Target
/config
Default
/mnt/user/appdata/DUMB/config
log directoryPathrw

Directory where your DUMB logs will be found.

Target
/log
Default
/mnt/user/appdata/DUMB/log
Location for all symlinks -- ADD THIS DIRECTORY TO PlexPathrw,shared

Directory for all symlinks. Use this directory in Plex for the libraries!

Target
/mnt/debrid
Default
/mnt/user/appdata/DUMB/mnt/debrid
Rclone Cache DirectoryPathrw

Required otherwise the docker image fills up and causes issues

Target
/cache
Default
/mnt/user/appdata/DUMB/cache
Data directoryPathrw

Directory for all data related to services.

Target
/data
Default
/mnt/user/appdata/DUMB/data
Plex Media Server PortPorttcp

Web UI Port for Plex

Target
32400
Default
32400
pgAdmin 4 PortPorttcp

Optional. Can be removed if not using pgAdmin.

Target
5050
Default
5050
DUMB Frontend PortPorttcp

Frontend port for DUMB

Target
3005
Default
3005
Riven or NZBDav Frontend PortPorttcp

Optional. Can remove if not using Riven or NZBDav

Target
3000
Default
3000
cli_debird Frontend PortPorttcp

Optional. Can remove if not using cli_debrid.

Target
5000
Default
5000
Decypharr Frontend PortPorttcp

Optional. Can remove if not using Decypharr.

Target
8282
Default
8282
Access Host OS fuseDevice

Path to docker fuse on the unraid host. Has to be included otherwise fuser fails to mount.

Target
/dev/fuse:/dev/fuse:rwm
Default
/dev/fuse:/dev/fuse:rwm
DUMB Log LevelVariable

Set this to DEBUG for extensive info for troubleshooting. Can be set to NOTICE for less info in the log.

Target
DUMB_LOG_LEVEL
Default
INFO
PUIDVariable

Set the system PID. unraid uses nobody:users (99:100)

Default
99
PGIDVariable

Set the system PGID. unraid uses nobody:users (99:100)

Default
100