Configuration#
📑 Overview#
DUMB relies on a centralized configuration file, dumb_config.json
, to control its services, logging, API settings, and more. This file allows you to customize the behavior of DUMB without modifying the source code.
DUMB also supports environment variables, .env files, and Docker secrets. If the same setting is defined in multiple places, the precedence is as follows:
- Environment Variables (highest priority)
- .env File
- Docker Secrets
dumb_config.json
(lowest priority)
🛠️ Configuration File Structure#
Be Careful When Modifying dumb_config.json
While DUMB is highly configurable via dumb_config.json
,
some changes can cause failures during startup.
As such, it is not recommended to make modifications unless you fully understand their impact.
Below is the general structure of dumb_config.json
:
{
"puid": 1000,
"pgid": 1000,
"tz": "",
"dumb": { ... },
"postgres": { ... },
"pgadmin": { ... },
"rclone": { ... },
"riven_backend": { ... },
"riven_frontend": { ... },
"zilean": { ... },
"zurg": { ... }
}
Each section configures a specific service.
Below is a breakdown of some of the sections:
🔧 General Settings#
User & Timezone#
"puid": 1000,
"pgid": 1000,
"tz": ""
- puid / pgid – Define the user and group IDs for container execution.
- tz – Set the timezone (e.g.,
America/New_York
).
(puid/pgid cannot be set to 0
, aka root)
📜 Logging Settings#
Located in dumb
:
"log_level": "INFO",
"log_name": "DUMB",
"log_dir": "/log",
"log_count": 2,
"log_size": "10M",
"color_log": true
- log_level – Set the logging verbosity (
DEBUG
,INFO
,WARNING
,ERROR
). - log_dir – Directory where logs are stored.
- log_count – Number of rotated logs to retain.
- log_size – Maximum log file size before rotation.
- color_log – Enables colored log output.
🔐 Integration Tokens & Credentials#
Located in the dumb
section of dumb_config.json
:
"plex_token": "",
"plex_address": "",
"github_token": "",
"github_username": ""
🔄 Plex Integration#
plex_token
– This token is used by Riven backend for interacting with your Plex account. It allows features such as using watchlists and sending library scan requests to the Plex server.plex_address
– The internal or external URL of your Plex server (e.g.,http://127.0.0.1:32400
).
These values are used automatically by Riven when setting up the Riven Backend.
🧬 GitHub Integration#
github_token
– Used to increase GitHub API rate limits and unlock access to private/sponsored repositories such aszurg
when associated with your GitHub account.github_username
– (Reserved for future use) Will support additional GitHub-sourced services and contributor personalization.
To create a GitHub token:
- Go to GitHub Developer Settings → Tokens (Classic)
- Click Generate new token (classic)
-
Set an expiration and enable the following scopes:
repo:all
write:packages
read:packages
-
Click Generate token and copy the token — it will only be shown once
- Add the token to your
.env
file or docker compose withDMB_GITHUB_TOKEN=
, ordumb_config.json
under"github_token"
🔌 Service Configuration#
Each DUMB-integrated service is configured within its own section of dumb_config.json
.
See the individual service pages for in-depth configuration details:
- DUMB API
- DUMB Frontend
- Decypharr
- CLI Debrid
- Plex Media Server
- pgAdmin 4
- PostgreSQL
- rclone
- Riven Backend
- Riven Frontend
- Zilean
- Zurg