Docker
Docker 20.10+ or Docker Desktop
Blockbusterr is distributed as a Linux container for AMD64 and ARM64 systems. Use Docker directly, Docker Compose, or a container-management UI such as Unraid, TrueNAS SCALE, or Portainer.
Docker
Docker 20.10+ or Docker Desktop
Persistent storage
A writable host directory mounted at /app/data
Network
Access to at least one discovery provider (TMDB, Simkl, Trakt, or MDBList) and your delivery stack
Quickest way to get started - Single command deployment.
Pull the latest image:
docker pull ghcr.io/mahcks/blockbusterr:latest-betaRun the container:
docker run -d \ --name blockbusterr \ -p 9090:9090 \ -v blockbusterr-data:/app/data \ -e TZ=America/New_York \ ghcr.io/mahcks/blockbusterr:latest-betaAccess the web UI at http://localhost:9090
Best for production - Easy management and restarts.
Create compose.yaml:
services: blockbusterr: image: ghcr.io/mahcks/blockbusterr:latest-beta container_name: blockbusterr ports: - "9090:9090" volumes: - blockbusterr-data:/app/data environment: TZ: America/New_York # BLOCKBUSTERR_AUTH_TOKEN: replace-with-at-least-32-random-characters restart: unless-stopped
volumes: blockbusterr-data:Start the stack:
docker compose up -dView logs:
docker compose logs -f blockbusterrComplete setup - Blockbusterr + Radarr + Sonarr on the same network.
networks: media: driver: bridge
services: blockbusterr: image: ghcr.io/mahcks/blockbusterr:latest-beta container_name: blockbusterr networks: - media ports: - "9090:9090" volumes: - ./blockbusterr/data:/app/data environment: - TZ=America/New_York restart: unless-stopped
radarr: image: linuxserver/radarr:latest container_name: radarr networks: - media ports: - "7878:7878" volumes: - ./radarr/config:/config - /path/to/movies:/movies environment: - PUID=1000 - PGID=1000 - TZ=America/New_York restart: unless-stopped
sonarr: image: linuxserver/sonarr:latest container_name: sonarr networks: - media ports: - "8989:8989" volumes: - ./sonarr/config:/config - /path/to/tv:/tv environment: - PUID=1000 - PGID=1000 - TZ=America/New_York restart: unless-stoppedFor developers - Build from source code.
Clone the repository:
git clone https://github.com/mahcks/blockbusterr.gitcd blockbusterrInstall dependencies:
go mod downloadBuild the binary:
make buildRun Blockbusterr:
./bin/blockbusterrDevelopment mode with hot reload:
make devConfigure Blockbusterr behavior with environment variables:
| Variable | Default | Description |
|---|---|---|
CONFIG_PATH | config search paths | Directory containing the config file |
DATA_DIR | ./data | Database directory |
DISABLE_UI | false | Disable the web UI when set to true, 1, or yes |
BLOCKBUSTERR_AUTH_TOKEN | unset | Optional owner token (at least 32 characters); sign in with username blockbusterr |
BLOCKBUSTERR_DRY_RUN | false | Evaluate jobs and record decisions without sending content to Radarr, Sonarr, Jellyseerr, or Seerr |
VERSION | build metadata | Override displayed version metadata |
COMMIT | build metadata | Override displayed commit metadata |
TZ | UTC | Timezone for scheduling |
Example with custom settings:
docker run -d \ --name blockbusterr \ -p 8080:9090 \ -e DATA_DIR=/app/data \ -e TZ=Europe/London \ -v $(pwd)/data:/app/data \ ghcr.io/mahcks/blockbusterr:latest-betaVerify Blockbusterr is running correctly:
curl -u blockbusterr:$BLOCKBUSTERR_AUTH_TOKEN http://localhost:9090/v1/Expected response:
{ "version": "2.0.0", "uptime": "1785518792000"}docker pull ghcr.io/mahcks/blockbusterr:latest-betadocker stop blockbusterrdocker rm blockbusterr# Then run the original docker run commanddocker compose pull blockbusterrdocker compose up -d blockbusterrDownload the new release or pull the latest code:
git pull origin mainmake build./bin/blockbusterrPort Already in Use
Change the port mapping: -p 8080:9090 (host:container)
Permission Denied
Ensure the data directory is owned and writable by the user running Blockbusterr.
Can't Connect to *arr
Use container names if on same Docker network, not localhost
Database Locked
Only run one Blockbusterr instance per data directory
Quick Start
Get up and running in 5 minutes
Configuration
Configure a discovery provider and your delivery integrations
Set Up Jobs
Create automated content discovery jobs