Dispatcharr
| Description / name | Input element |
|---|---|
| Container Registry | |
| Container Configuration Root Path | |
| Timezone | |
| Dispatcharr Host Port | |
| Dispatcharr /data Path |
Dispatcharr — stream dispatching and channel management.
Requires ocijail with annotation support (≥ 0.6.0)
This image needs the jail permission allow.sysvipc, applied via OCI annotations. FreeBSD quarterly ships ocijail 0.4.0, which has no annotation support — the container starts but the permission is silently dropped, so the app can crash or misbehave. Point your pkg repos at the latest branch (ocijail ≥ 0.6.0) and run with the annotation flag shown below. See the ocijail guide.
| Port | 9191 |
| Registry | ghcr.io/daemonless/dispatcharr |
| Daemonless | daemonless/dispatcharr |
| Source | Dispatcharr/Dispatcharr |
| Website | dispatcharr.io |
Version Tags
| Tag | Description | Best For |
|---|---|---|
latest |
FreeBSD Port. Built from latest FreeBSD packages. | Most users. Matches Linux Docker behavior. |
Before deploying, ensure your host environment is ready. See the Quick Start Guide for host setup instructions, including the security model for host vs. container privileges.
Deployment
Access at: http://localhost:9191
Interactive Configuration
Parameters
Environment Variables
| Variable | Default | Description |
|---|---|---|
TZ |
UTC |
Timezone (e.g. America/New_York) |
POSTGRES_DB |
dispatcharr |
PostgreSQL database name (default: dispatcharr) |
POSTGRES_USER |
dispatcharr |
PostgreSQL username (default: dispatcharr) |
POSTGRES_PASSWORD |
dispatcharr |
PostgreSQL password (default: dispatcharr) |
CELERY_NICE_LEVEL |
5 |
niceness for Celery workers (default: 5) |
DISPATCHARR_PORT |
`` | Web UI port (default: 9191) |
DJANGO_SECRET_KEY |
<DJANGO_SECRET_KEY> |
Django secret key — auto-generated if not set, persisted to /data/secret_key |
REDIS_HOST |
`` | Redis hostname (default: 127.0.0.1) |
REDIS_PORT |
`` | Redis port (default: 6379) |
DISABLE_ML_DOWNLOADS |
`` | Set false to enable ML channel matching (requires torch — not available in this build) |
Volumes
| Path | Description |
|---|---|
/data |
Persistent data — PostgreSQL cluster, media, backups, logos |
Ports
| Port | Protocol | Description |
|---|---|---|
9191 |
TCP | Web UI |
Work in Progress: This is an all-in-one (AIO) image — PostgreSQL, Redis, Nginx, Celery, Daphne, and the Django app all run inside a single container.
First run: the container initialises a fresh PostgreSQL cluster under /data/postgres
and runs Django migrations automatically. This takes a few extra seconds on first start.
PostgreSQL requires allow.sysvipc in the jail. Add the annotation to your podman run
command or compose deploy block:
DJANGO_SECRET_KEY: if not provided, a random key is auto-generated on first start
and persisted to /data/secret_key. Set it explicitly if you need a stable key across
container recreations.
AI channel matching (torch / sentence-transformers) is not available in this build — PyTorch exists in FreeBSD ports but Python 3.13 support is not yet available (FreeBSD bug #285957, expected ~2027). The rest of Dispatcharr is fully functional.
Implementation Details
- Architectures: amd64
- User:
bsd(UID/GID set via PUID/PGID). Defaults to1000:1000. - Base: Built on
ghcr.io/daemonless/base(FreeBSD 15.1). - sysvipc: Requires
--annotation 'org.freebsd.jail.allow.sysvipc=true'(ocijail 0.5.0+)
Need help? Join our Discord community.