# Kavita •

Book and comic server with a fully-functional web interface for enjoying your media.

# Overview

[![Screen Shot 2025-03-08 at 22.58.50.png](https://hub.subspace.services/uploads/images/gallery/2025-03/scaled-1680-/screen-shot-2025-03-08-at-22-58-50.png)](https://hub.subspace.services/uploads/images/gallery/2025-03/screen-shot-2025-03-08-at-22-58-50.png)

[Kavita](https://www.kavitareader.com/) is a self-hosted digital library management and reading software designed for comics, manga and ebooks.

<p class="callout success">Tryout a [Kavita demo](https://www.kavitareader.com/#demo).</p>

- Streamlined and user-friendly interface for managing your media's metadata.
- Keep your reading progress synchronized across all of your devices.
- Create users accounts to share with friend and family while controlling access to your media.

# Media

## Screenshots

<p class="callout info">Kavita v0.8.5.1</p>

<table border="1" id="bkmrk-" style="border-collapse: collapse; width: 100%; border-width: 1px; height: 59.6px; border-color: rgb(88, 110, 117);"><colgroup><col style="width: 33.3333%;"></col><col style="width: 33.3333%;"></col><col style="width: 33.3333%;"></col></colgroup><tbody><tr style="height: 29.8px;"><td style="border-width: 1px; height: 29.8px; border-color: rgb(88, 110, 117);">[![Screen Shot 2025-03-08 at 22.58.50.png](https://hub.subspace.services/uploads/images/gallery/2025-03/scaled-1680-/screen-shot-2025-03-08-at-22-58-50.png)](https://hub.subspace.services/uploads/images/gallery/2025-03/screen-shot-2025-03-08-at-22-58-50.png)</td><td style="border-width: 1px; height: 29.8px; border-color: rgb(88, 110, 117);">[![Screen Shot 2025-03-08 at 22.59.06.png](https://hub.subspace.services/uploads/images/gallery/2025-03/scaled-1680-/screen-shot-2025-03-08-at-22-59-06.png)](https://hub.subspace.services/uploads/images/gallery/2025-03/screen-shot-2025-03-08-at-22-59-06.png)</td><td style="border-width: 1px; height: 29.8px; border-color: rgb(88, 110, 117);">[![Screen Shot 2025-03-08 at 22.59.27.png](https://hub.subspace.services/uploads/images/gallery/2025-03/scaled-1680-/screen-shot-2025-03-08-at-22-59-27.png)](https://hub.subspace.services/uploads/images/gallery/2025-03/screen-shot-2025-03-08-at-22-59-27.png)</td></tr><tr style="height: 29.8px;"><td style="border-width: 1px; height: 29.8px; border-color: rgb(88, 110, 117);">[![Screen Shot 2025-03-08 at 23.00.16.png](https://hub.subspace.services/uploads/images/gallery/2025-03/scaled-1680-/screen-shot-2025-03-08-at-23-00-16.png)](https://hub.subspace.services/uploads/images/gallery/2025-03/screen-shot-2025-03-08-at-23-00-16.png)</td><td style="border-width: 1px; height: 29.8px; border-color: rgb(88, 110, 117);">[![Screen Shot 2025-03-08 at 23.01.04.png](https://hub.subspace.services/uploads/images/gallery/2025-03/scaled-1680-/screen-shot-2025-03-08-at-23-01-04.png)](https://hub.subspace.services/uploads/images/gallery/2025-03/screen-shot-2025-03-08-at-23-01-04.png)</td><td style="border-width: 1px; height: 29.8px; border-color: rgb(88, 110, 117);">[![Screen Shot 2025-03-08 at 23.01.15.png](https://hub.subspace.services/uploads/images/gallery/2025-03/scaled-1680-/screen-shot-2025-03-08-at-23-01-15.png)](https://hub.subspace.services/uploads/images/gallery/2025-03/screen-shot-2025-03-08-at-23-01-15.png)</td></tr><tr><td style="border-width: 1px; border-color: rgb(88, 110, 117);">[![Screen Shot 2025-03-08 at 23.02.10.png](https://hub.subspace.services/uploads/images/gallery/2025-03/scaled-1680-/screen-shot-2025-03-08-at-23-02-10.png)](https://hub.subspace.services/uploads/images/gallery/2025-03/screen-shot-2025-03-08-at-23-02-10.png)</td><td style="border-width: 1px; border-color: rgb(88, 110, 117);">  
</td><td style="border-width: 1px; border-color: rgb(88, 110, 117);">  
</td></tr></tbody></table>

# Setup & Configuration

We need to install the service through Portainer and configure any necessary settings.

# Preparation

There are some things we need to do in preparation to install this service.

## Volumes

<details id="bkmrk-media-folders-radarr"><summary>Persistent Data</summary>

This is where the service will store its own application data and ensures we can quickly update the service image.

<p class="callout warning">Ensure your user has permissions to access the folder.</p>

</details><details id="bkmrk-media-folders-this-s"><summary>Media Folders</summary>

This service will need access to the folders where you store your media files.

<p class="callout warning">Ensure your user has permissions to access the folder.</p>

</details>## Environment

<details id="bkmrk-tz-this-is-the-curre"><summary>TZ</summary>

This is the current time zone formatted using the [tz database.](https://en.wikipedia.org/wiki/List_of_tz_database_time_zones)

<p class="callout info">*For example:* America/Vancouver</p>

</details><details id="bkmrk-gid-%C2%A0"><summary>PUID</summary>

This is the numeric ID of the user account on Debian. If you are unsure, open a terminal and run:

```bash
id -u
```

</details><details id="bkmrk-pgid-this-is-the-num"><summary>PGID</summary>

This is the numeric ID of the user account's group on Debian. If you are unsure, open a terminal and run:

```bash
id -g
```

</details>

# Installation

The service can be installed through the Portainer web interface.

<p class="callout info">Learn about [creating a new stack](https://hub.subspace.services/books/portainer/page/creating-a-new-stack "Creating a New Stack").</p>

## Docker Compose

Use the following code to install the service:

```yaml
---
services:
    kavita:
        image: lscr.io/linuxserver/kavita:latest
        container_name: kavita
        network_mode: bridge
        volumes:
            # Persistent Data
            - /srv/kavita:/kavita/config 

            # Media Files
            - /mnt/comics:/comics     
            - /mnt/books:/books
        environment:
            - TZ=America/Los_Angeles
            - PUID=1000
            - PGID=1000
        ports:
            - "5030:5000"
        restart: unless-stopped
```

# Updating

<p class="callout success">Re-Deploy the Stack</p>

This service has been optimized for running in Docker thanks to [LinuxServer.io](https://linuxserver.io).

This allows you to [re-deploy the stack through Portainer](https://hub.subspace.services/books/portainer/page/updating-a-stack "Updating a Stack") to download the latest updates.

# User Manual

# Development

<p class="callout info">This software is released under the [GPL-3.0 license](https://opensource.org/license/gpl-3-0). </p>

You can learn more about how to contribute to Kavita through their [documentation](https://github.com/Kareadita/Kavita/blob/develop/CONTRIBUTING.md).

The development team also accepts [sponsorships](https://opencollective.com/Kavita).

# Resources

## Official

- [Official Documentation](https://wiki.kavitareader.com/)
- [Official Discord](https://discord.gg/b52wT37kt7)
- [Official Forum](https://github.com/Kareadita/Kavita/discussions)
- [Official GitHub Repository](https://github.com/Kareadita/Kavita)
- [Official Website](https://www.kavitareader.com/)
- [Installation Guide](https://wiki.kavitareader.com/installation/docker/lsio/)
- [Frequently Asked Questions](https://wiki.kavitareader.com/troubleshooting/faq/)

## LinuxServer.io

- [Docker Image](https://docs.linuxserver.io/images/docker-kavita/)
- [Official Website](https://www.linuxserver.io/)
- [Official Documentation](https://docs.linuxserver.io/)
- [Official Discord](https://linuxserver.io/discord)
- [Official Forum](https://discourse.linuxserver.io/)
- [Official GitLab Repository ](https://gitlab.com/Linuxserver.io)
- [Frequently Asked Questions](https://docs.linuxserver.io/FAQ/)