How to Self-Host Kapowarr with Docker Compose

What Is Kapowarr?

Kapowarr started as a gap-filler for the *arr stack — Sonarr handles TV, Radarr handles movies, Readarr handles ebooks, but none of them handled comics and manga well. Kapowarr fills that gap with automated downloading, series tracking, and file organization for comic books and manga, using the same familiar UI design that *arr users expect.

Official site: casvt.github.io/Kapowarr

Quick Verdict

Kapowarr is the only dedicated self-hosted comic/manga download manager. If you read comics or manga and want automated series tracking with direct download support, there is nothing else that fills this niche. It is lightweight (single container, SQLite), simple to configure, and works well alongside Kavita or Komga for reading.

Use Cases

  • Comic collectors who want automated downloads of ongoing series
  • Manga readers who want to track and download entire series
  • Homelab users running Kavita or Komga who need an acquisition tool
  • *arr stack users who want the same experience for comics that Sonarr gives them for TV

If you are looking for a comic reader rather than a downloader, see Kavita or Komga instead. Kapowarr handles acquisition; those handle reading.

Prerequisites

  • A Linux server (Ubuntu 22.04+ recommended)
  • Docker and Docker Compose installed (guide)
  • 512 MB of free RAM
  • Storage space for your comic/manga library
  • A domain name (optional, for remote access)

Docker Compose Configuration

Create a directory and docker-compose.yml:

mkdir -p /opt/kapowarr && cd /opt/kapowarr
services:
  kapowarr:
    image: mrcas/kapowarr:v1.3.0
    container_name: kapowarr
    volumes:
      # Database and configuration
      - kapowarr-db:/app/db
      # Temporary download directory
      - /opt/kapowarr/temp_downloads:/app/temp_downloads
      # Comic/manga library — map your root folders here
      - /mnt/storage/comics:/comics-1
      # Optional: additional library directories
      # - /mnt/storage/manga:/comics-2
      # - /mnt/storage/graphic-novels:/comics-3
    ports:
      - "5656:5656"
    restart: unless-stopped

volumes:
  kapowarr-db:

Start the stack:

docker compose up -d

Initial Setup

  1. Open http://YOUR_SERVER_IP:5656 in your browser
  2. The web UI loads immediately — no account creation required on first launch
  3. Go to Settings to configure:
    • Root Folders — Add your comic/manga library directories (the container paths like /comics-1)
    • Download Sources — Configure download credentials for supported sources (GetComics, Mega, Pixeldrain, etc.)
  4. Start adding series by searching the ComicVine database from the main page
  5. Set volumes to “Monitored” to enable automatic downloading

Root Folder Configuration

Root folders are where Kapowarr moves completed downloads. The container paths must match your volume mounts:

Docker Volume MountRoot Folder Path (in UI)
/mnt/storage/comics:/comics-1/comics-1
/mnt/storage/manga:/comics-2/comics-2

Multiple root folders let you separate comics from manga, or split by publisher.

Configuration

Download Sources

Kapowarr supports direct download links from several hosting services. Each source can have multiple credential sets:

SourceRequires AccountNotes
GetComicsNoPrimary source for Western comics
MegaOptional (free tier limited)Higher download limits with account
PixeldrainNoFree file hosting
MediaFireNoDirect links only

Configure credentials in Settings → Download Sources. Sources with accounts get higher download limits and priority.

File Organization

Kapowarr automatically:

  • Renames files to match series/volume naming conventions
  • Extracts archives (ZIP, RAR, CBR, CBZ)
  • Moves completed downloads to the correct root folder
  • Creates series-based directory structures

Integration with Readers

Kapowarr does not include a reader. Pair it with:

  • Kavita — Best for manga, supports OPDS, web reader with reading progress tracking
  • Komga — Best for Western comics, OPDS support, strong metadata handling

Point your reader’s library at the same directory Kapowarr uses as a root folder. New downloads appear automatically.

Reverse Proxy

Caddy

kapowarr.example.com {
    reverse_proxy localhost:5656
}

Nginx

server {
    listen 443 ssl http2;
    server_name kapowarr.example.com;

    ssl_certificate /etc/letsencrypt/live/kapowarr.example.com/fullchain.pem;
    ssl_certificate_key /etc/letsencrypt/live/kapowarr.example.com/privkey.pem;

    location / {
        proxy_pass http://127.0.0.1:5656;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Proto $scheme;
    }
}

For full reverse proxy setup, see Reverse Proxy Explained.

Backup

Critical Data

VolumeContentsPriority
kapowarr-dbSQLite database (series tracking, download queue, settings)Critical
Root foldersDownloaded comics and mangaImportant (re-downloadable but slow)
temp_downloadsIn-progress downloadsNot critical (will re-download)

Database Backup

The database is a single SQLite file inside the kapowarr-db volume:

# Find and copy the database file
docker cp kapowarr:/app/db/. /opt/kapowarr/backup/

Restore

docker compose down
docker cp /opt/kapowarr/backup/. kapowarr:/app/db/
docker compose up -d

For a full backup strategy, see Backup Strategy.

Troubleshooting

Downloads stuck in queue

Symptom: Downloads show as queued but never start.

Fix: Verify the temp_downloads directory has write permissions:

docker exec kapowarr ls -la /app/temp_downloads/

If permission denied, check your volume mount and ensure the directory exists on the host:

mkdir -p /opt/kapowarr/temp_downloads
chmod 755 /opt/kapowarr/temp_downloads

Symptom: Searching for a series returns no results.

Fix: Kapowarr uses ComicVine for series metadata. Verify the container can reach the ComicVine API:

docker exec kapowarr wget -qO- https://comicvine.gamespot.com --spider

If it fails, check Docker DNS resolution. See Docker DNS Resolution Issues.

Files not moved to root folder

Symptom: Downloads complete but stay in temp_downloads.

Fix: Verify the root folder path in Kapowarr’s settings matches a container volume mount. If Settings shows /comics-1 but you mounted to /comics, the paths do not match and Kapowarr cannot move files.

Port 5656 already in use

Symptom: Container fails to start with “address already in use.”

Fix: Map to a different host port:

ports:
  - "5657:5656"    # Use 5657 on host

Resource Requirements

ResourceValue
RAM~100 MB idle, ~200 MB during active downloads
CPUVery low — spikes during archive extraction
Disk50 MB for application + library storage (variable)

Verdict

If you collect comics or manga and want automated downloading with series tracking, Kapowarr is the only game in town for self-hosting. The *arr-style interface is immediately familiar, the single-container deployment with SQLite keeps things simple, and the integration with Kavita or Komga for reading makes a complete self-hosted comics pipeline. The project is actively maintained with 875+ GitHub stars and regular releases. For comic and manga collectors, this is an essential addition to your homelab.

FAQ

Can Kapowarr replace Mylar3?

Kapowarr and Mylar3 serve similar purposes but take different approaches. Mylar3 uses Usenet/torrent indexers like the traditional *arr apps. Kapowarr uses direct download links from services like GetComics. If you already have Usenet or torrent infrastructure, Mylar3 may integrate better with your existing setup. If you want simpler direct downloads without configuring indexers, Kapowarr is the better choice.

Does Kapowarr support manga from MangaDex or similar sites?

Kapowarr primarily sources from Western comic providers like GetComics. For manga-specific sources, check the supported download services in the settings. The project is actively expanding source support.

Can I run Kapowarr alongside Sonarr and Radarr?

Yes. Kapowarr is designed to complement the *arr stack. It uses its own ports and database with no conflicts. Point your comic reader (Kavita/Komga) at the same library directory for a seamless experience.

Comments