Caution
Docker Desktop CANNOT be used to run DMB. Docker Desktop does not support the mount propagation required for rclone mounts.
You might have some success provided the :rshared
flag is omitted from the /mnt/debird
bind mount.
Which is means you can not use Decypharr.
Caution
See the DMB Docs for alternative deployment options to run DMB on Windows through WSL2.
Debrid Unlimited Media Bridge (DUMB) is an All-In-One (AIO) docker image for the unified deployment of the following projects/tools.
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 |
---|---|---|---|
cli_debrid | godver3 | Discord | Sponsor |
dmbdb | nicocapalbo | Issues | β |
Decypharr | Mukhtar Akere | 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) |
PostgreSQL | Michael Stonebraker | Docs | Donate |
rclone | Nick Craig-Wood | Docs | Sponsor |
Riven | Riven Media | Discord β’ Discussions | Sponsor |
Zilean | iPromKnight | Docs β’ Issues | β |
Zurg | yowmamasita | Wiki | Sponsor |
See the DUMB Docs for a full list of features and settings.
A prebuilt image is hosted on Docker Hub.
A prebuilt image is hosted on GitHub Container Registry.
services:
DUMB:
container_name: DUMB
image: iampuid0/dumb:latest ## Optionally, specify a specific version of DUMB w/ image: iampuid0/dumb:2.0.0
stop_grace_period: 30s ## Adjust as need to allow for graceful shutdown of the container
shm_size: 128mb ## Increased for PostgreSQL
stdin_open: true ## docker run -i
tty: true ## docker run -t
volumes:
- /home/username/docker/DUMB/config:/config ## Location of configuration files. If a Zurg config.yml and/or Zurg app is placed here, it will be used to override the default configuration and/or app used at startup.
- /home/username/docker/DUMB/log:/log ## Location for logs
- /home/username/docker/DUMB/Zurg/RD:/zurg/RD ## Location for Zurg RealDebrid active configuration
- /home/username/docker/DUMB/Riven/data:/riven/backend/data ## Location for Riven backend data
- /home/username/docker/DUMB/PostgreSQL/data:/postgres_data ## Location for PostgreSQL database
- /home/username/docker/DUMB/pgAdmin4/data:/pgadmin/data ## Location for pgAdmin 4 data
- /home/username/docker/DUMB/Zilean/data:/zilean/app/data ## Location for Zilean data
- /home/username/docker/DUMB/plex_debrid:/plex_debrid/config ## Location for plex_debrid data
- /home/username/docker/DUMB/cli_debrid:/cli_debrid/data ## Location for cli_debrid data
- /home/username/docker/DUMB/phalanx_db:/phalanx_db/data ## Location for phalanx_db data
- /home/username/docker/DUMB/decypharr:/decypharr ## Location for decypharr data
- /home/username/docker/DUMB/plex:/plex ## Location for plex data
- /home/username/docker/DUMB/mnt/debrid:/mnt/debrid ## Location for all symlinks and rclone mounts - change to /mnt/debrid:rshared if using decypharr
environment:
- TZ=
- PUID=
- PGID=
- DUMB_LOG_LEVEL=INFO
# network_mode: container:gluetun ## Example to attach to gluetun vpn container if realdebrid blocks IP address
ports:
- "3005:3005" ## DUMB Frontend
- "3000:3000" ## Riven Frontend
- "5050:5050" ## pgAdmin 4 Frontend
- "5000:5000" ## CLI Debrid Frontend
- "8282:8282" ## Decypharr Frontend
- "32400:32400" ## Plex Media Server
devices:
- /dev/fuse:/dev/fuse:rwm
- /dev/dri:/dev/dri
cap_add:
- SYS_ADMIN
security_opt:
- apparmor:unconfined
- no-new-privileges
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
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 |
---|---|---|
3005 |
TCP | DUMB frontend - a web UI is accessible at the assigned port |
3000 |
TCP | Riven frontend - A web UI is accessible at the assigned port |
8080 |
TCP | Riven backend - The API is accessible at the assigned port |
5432 |
TCP | PostgreSQL - The SQL server is accessible at the assigned port |
5050 |
TCP | pgAdmin 4 - A web UI is 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 - A web UI is accessible at the assigned port |
5000 |
TCP | CLI Debrid - A web UI is accessible at the assigned port |
8888 |
TCP | Phalanx DB - The API is accessible at the assigned port |
8282 |
TCP | Decypharr - A web UI is accessible at the assigned port |
32400 |
TCP | Plex Media Server - PMS is accessible at the assigned port |
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 rclone.conf, and any files needing persistence. CAUTION: rclone.conf is overwritten upon start/restart of the container. Do NOT use an existing rclone.conf file if you have other rclone services |
/log |
rw | This is where the application stores its log files |
/zurg/RD |
rw | This is where Zurg will store the active configuration and data for RealDebrid. |
/riven/data |
rw | This is where Riven will store its data. |
/postgres_data |
rw | This is where PostgreSQL will store its data. |
/pgadmin/data |
rw | This is where pgAdmin 4 will store its data. |
/plex_debrid/config |
rw | This is where plex_debrid will store its data. |
/cli_debrid/data |
rw | This is where cli_debrid will store its data. |
/phalanx_db/data |
rw | This is where phalanx_db will store its data. |
/decypharr |
rw | This is where decypharr will store its data. |
/plex |
rw | This is where Plex Media Server will store its data. |
/mnt/debrid |
rw | This is where the symlinks and rclone mounts will be stored |
See the DUMB roadmap for a list of planned features and enhancements.
DUMB allows for the simultaneous or individual deployment of any of the services
For additional details on deployment, see the DUMB Docs
- 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
- The repo contains a devcontainer for use with vscode.
- Bind mounts will need to be populated with content from this repo