Skip to content

I-am-PUID-0/DUMB

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

292 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

🎬 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 Docs β€’ Issues β€”
cli_debrid godver3 Discord Sponsor
dmbdb nicocapalbo Issues β€”
Decypharr Mukhtar Akere Docs β€’ Issues Sponsor
Emby Media Server Emby, LLC Support Donate (via Emby Premiere)
Jellyfin Media Server Jellyfin Team Docs β€’ Support Donate
NeutArr I-am-PUID-0 Issues Donate
Lidarr Lidarr Team Docs β€’ Discord Sponsor
NzbDAV nzbdav-dev Docs β€’ Issues β€”
Profilarr Dictionarry Hub Docs β€’ Issues Sponsor
pgAdmin 4 pgAdmin Team Docs β€’ Support Donate
phalanx_db godver3 Discord Sponsor
plex_debrid itsToggle Discord β€’ Issues Affiliate β€’ PayPal
Plex Media Server plexinc Support Donate (via Plex Pass)
Pulsarr jamcalli Docs β€’ Issues Support
Seerr Seerr Team Docs β€’ Issues Sponsor
Tautulli Tautulli Docs β€’ Issues Donate
Traefik Proxy Admin I-am-PUID-0 Docs β€’ Issues Sponsor
cloudflared Cloudflare Docs β€’ Issues β€”
PostgreSQL Michael Stonebraker Docs Donate
Prowlarr Prowlarr Team Docs β€’ Discord Sponsor
Radarr Radarr Team Docs β€’ Discord Sponsor
rclone Nick Craig-Wood Docs Sponsor
Riven Riven Media Discord β€’ Discussions Sponsor
Sonarr Sonarr Team Docs β€’ Discord Sponsor
Whisparr Whisparr Team Docs β€’ Discord Sponsor
Zilean iPromKnight Docs β€’ Issues 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
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

Sponsor this project

 

Packages

 
 
 

Contributors

Languages