Railway

Deploy Kavita | Your Private Digital Library Server

Self-host Kavita on Railway — read manga, comics, and ebooks

Deploy Kavita | Your Private Digital Library Server

Just deployed

/kavita/config

Kavita logo

Deploy and Host Kavita on Railway

Deploy Kavita on Railway to get a fast, self-hosted digital library server for manga, comics, and ebooks — accessible from any browser or OPDS-compatible reader app. Run Kavita on Railway without provisioning servers, managing TLS certificates, or writing Docker configuration files. This template deploys the official jvmilazz0/kavita:latest image with persistent storage for your library data, metadata, and reading progress.

Kavita is an open-source reading server (GPL-3.0) by Kareadita that handles manga, webtoons, comics (CBR, CBZ, ZIP, RAR, 7zip), and ebooks (EPUB, PDF) through purpose-built readers optimized for each format. Self-host Kavita to keep your reading library private, synced across devices, and under your full control. Source code: Kareadita/Kavita on GitHub (10.4k stars).

Getting Started with Kavita on Railway

After deployment completes, open your Railway-generated public URL. Kavita presents a first-time setup wizard where you create an admin account with a strong password. No default credentials are shipped — you set everything from scratch.

Once logged in, add a library by navigating to Server Settings > Libraries > Add Library. Select a library type (Manga, Comic, or Book) and point it to a folder under /kavita/config/library. Kavita scans the directory, extracts metadata and covers, and populates your dashboard. You can upload files directly through the web UI or use Kavita's built-in download features.

Railway enforces a one-volume-per-service rule, so all persistent data — the SQLite database, cover cache, logs, backups, and your library files — lives under the single /kavita/config mount. Organize your content in subdirectories like /kavita/config/library/manga and /kavita/config/library/books.

Kavita dashboard screenshot

About Hosting Kavita

Kavita is purpose-built for reading digital media in the browser. Unlike general file servers, it provides format-specific readers with features tailored to how people actually consume manga, comics, and books.

  • Manga and webtoon reader with continuous scroll, single-page, and dual-page spread modes
  • Comic reader for CBR/CBZ/ZIP/RAR/7zip archives with page-level navigation
  • EPUB reader with annotation support and Obsidian export
  • PDF viewer with full rendering and search
  • OPDS support for third-party apps like KOReader, Panels, and Chunky
  • User management with per-library access control and age restrictions
  • OIDC authentication for SSO integration alongside built-in auth
  • Folder watching — automatically detects new files and updates libraries
  • Full-text search across titles, authors, tags, and file contents
  • Reading progress sync across all devices per user

Why Deploy Kavita on Railway

  • One-click deploy with persistent volume — no Docker or server setup needed
  • Automatic HTTPS on your public domain
  • Railway handles container orchestration, networking, and TLS termination
  • Scale CPU and RAM on demand as your library grows
  • Built-in deploy rollbacks and health monitoring

Common Use Cases for Kavita

  • Personal manga library — Organize thousands of chapters across series with automatic metadata extraction and cover generation
  • Family reading server — Create individual accounts with different library access, age ratings, and independent reading progress
  • Comic book collection — Browse and read CBR/CBZ archives with a responsive reader that supports page-level bookmarks
  • Ebook library with annotations — Read EPUBs in the browser, highlight passages, and export annotations to Obsidian
  • OPDS feed for mobile readers — Serve content to KOReader, Panels, Chunky, or any OPDS-compatible app

Dependencies for Kavita on Railway

This template deploys a single service with an embedded SQLite database — no external database required.

  • Kavitajvmilazz0/kavita:latest (official Docker image, ~238 MB)
  • Volume — Mounted at /kavita/config for SQLite database, library files, covers, logs, and backups

Environment Variables Reference for Kavita

VariableValueDescription
PORT5000HTTP server listening port
TZEtc/UTCTimezone for logs and scheduled tasks
RAILWAY_RUN_UID0Run as root for volume permissions

Deployment Dependencies for Kavita

Hardware Requirements for Self-Hosting Kavita

ResourceMinimumRecommended
CPU1 vCPU2 vCPU
RAM512 MB1-2 GB (for libraries with 5,000+ files)
Storage100 MB (app) + library sizeDepends on collection
NetworkStandard HTTPHTTPS recommended

Kavita is lightweight at idle but uses more CPU during library scans — especially when generating covers and extracting metadata from large comic archives. RAM usage scales with the number of concurrent readers and library size.

Self-Hosting Kavita with Docker

Pull and run the official image directly:

docker run -d \
  --name=kavita \
  -p 5000:5000 \
  -v /path/to/manga:/manga \
  -v /path/to/config:/kavita/config \
  --restart unless-stopped \
  jvmilazz0/kavita:latest

Or use Docker Compose for a more maintainable setup:

version: "3"
services:
  kavita:
    image: jvmilazz0/kavita:latest
    container_name: kavita
    environment:
      - TZ=Etc/UTC
    volumes:
      - ./config:/kavita/config
      - ./manga:/manga
      - ./books:/books
    ports:
      - 5000:5000
    restart: unless-stopped

Point your library directories to wherever your manga, comics, or ebooks are stored. Kavita auto-detects file types and applies the correct reader.

How Much Does Kavita Cost to Self-Host?

Kavita's core application is completely free and open-source under GPL-3.0. There are no paywalled features in the self-hosted server itself.

An optional Kavita+ subscription ($4/month) adds AniList and MyAnimeList sync, external ratings, automatic metadata retrieval from online sources, and personalized recommendations. Kavita+ is not required for any core functionality — it enhances metadata and tracking for users who want integration with anime/manga databases.

When hosting on Railway, your cost is Railway infrastructure only — typically $5-7/month for a small-to-medium library with light traffic. Storage costs scale with your library size.

Frequently Asked Questions About Self-Hosting Kavita

What is Kavita and how does it compare to other reading servers? Kavita is a self-hosted digital library server optimized for manga, comics, and ebooks. Unlike Calibre-Web (which requires a Calibre desktop database), Kavita is folder-based — drop files into a directory and it handles metadata extraction, cover generation, and organization automatically. It supports more comic formats than Calibre-Web and has purpose-built readers for each media type.

What file formats does Kavita support for self-hosted libraries? Kavita supports manga and comics in CBR, CBZ, ZIP, RAR, RAR5, 7zip formats and raw image folders. For ebooks, it handles EPUB and PDF. Webtoons are supported through long-strip image sequences. Each format gets a dedicated reader optimized for that media type.

How do I add books and manga to Kavita deployed on Railway? On Railway, your content lives under /kavita/config/library. You can upload files through Kavita's web UI, use the OPDS feed with compatible apps, or manage files via Railway's volume access. Create subdirectories for each library type (manga, comics, books) and configure library paths in Server Settings.

Does self-hosted Kavita support multiple users with separate reading progress? Yes. Kavita has built-in user management with per-library access control, age restrictions, and independent reading progress tracking. Each user gets their own "want to read" lists, bookmarks, and reading history. Authentication supports both built-in accounts and OIDC/SSO providers.

Can I use Kavita with OPDS reader apps on mobile devices? Yes. Kavita exposes an OPDS feed that works with apps like KOReader, Panels, Chunky, and other OPDS-compatible readers. Users authenticate with their Kavita credentials and can browse, search, and download content directly from mobile apps.

Kavita vs Calibre-Web

FeatureKavitaCalibre-Web
Best forManga + comics + ebooksEbooks (EPUB, PDF, MOBI)
Library systemFolder-based (auto-scan)Calibre metadata.db required
Built-in readersEPUB, PDF, CBR/CBZ, webtoonEPUB, PDF
Comic/manga supportNative (CBR, CBZ, RAR, 7zip)Limited
OPDS supportYesYes
Kobo syncNoYes (native)
Send-to-KindleNoYes (email)
User managementMulti-user with OIDCMulti-user with LDAP/OAuth
AnnotationsEPUB highlights + Obsidian exportBasic bookmarks
GitHub stars10.4k17k+
LicenseGPL-3.0GPL-3.0

Kavita is the stronger choice for manga and comic collections with its format-specific readers and folder-based library management. Calibre-Web is better suited for prose ebook libraries, especially if you already use Calibre desktop for metadata management.


Template Content

More templates in this category

View Template
Foundry Virtual Tabletop
A Self-Hosted & Modern Roleplaying Platform

Lucas
View Template
Letta Code Remote
Run a Letta Code agent 24/7. No inbound ports, just deploy.

Letta
View Template
(v1) Simple Medusa Backend
Deploy an ecommerce backend and admin using Medusa

Shahed Nasser