bolt Valebyte VPS от $4/мес — NVMe, запуск за 60 секунд.

Получить VPS arrow_forward

Kavita на VPS: установка, настройка и обслуживание

calendar_month 12 июня 2026 schedule 16 мин. чтения visibility 25 просмотров
person
Valebyte Team
Kavita на VPS: установка, настройка и обслуживание

Для установки, настройки и обслуживания Kavita на VPS вам потребуется виртуальный сервер с минимум 2 vCPU, 2-4 ГБ RAM и 20 ГБ NVMe-диска, а сам процесс включает развертывание через Docker Compose, настройку reverse proxy (Nginx или Caddy) для обеспечения безопасного доступа по HTTPS и реализацию стратегий резервного копирования для защиты вашей библиотеки комиксов и электронных книг.

Kavita — это современный, быстрый и функциональный медиасервер для управления и чтения цифровых комиксов, манги и электронных книг (EPUB, PDF). В отличие от более общих медиасерверов, Kavita сосредоточена именно на текстовом и графическом контенте, предлагая оптимизированный интерфейс для чтения, удобную организацию библиотеки и доступ с любого устройства через веб-браузер. Развертывание Kavita на VPS позволяет создать полностью контролируемую, приватную библиотеку, доступную только вам и вашим избранным пользователям, без привязки к сторонним облачным сервисам.

Возможность самостоятельного хостинга (self-hosted) Kavita на собственном сервере обеспечивает полный контроль над данными, высокую производительность и гибкость в настройке. Это идеальное решение для коллекционеров комиксов и книг, которые ищут надежную платформу для организации и чтения своей цифровой коллекции, а также для тех, кто ценит приватность и независимость от проприетарных решений.

Что такое Kavita и почему она нужна на VPS?

Kavita позиционируется как высокопроизводительный, самохостинговый сервер для чтения комиксов, манги и электронных книг. Она поддерживает широкий спектр форматов, включая CBZ, CBR, CBT, CB7, EPUB, PDF, а также изображения (JPG, PNG, WebP). Основные преимущества Kavita включают:

  • Интуитивно понятный интерфейс: Современный, отзывчивый веб-интерфейс, который отлично работает на настольных компьютерах, планшетах и смартфонах.
  • Поддержка коллекций: Возможность создавать коллекции, серии, добавлять метаданные, что значительно упрощает навигацию по большой библиотеке.
  • Мультипользовательский доступ: Поддержка нескольких пользователей с индивидуальными профилями, отслеживанием прогресса чтения и настройками.
  • Прогрессивное чтение: Автоматическое сохранение позиции чтения, что позволяет продолжить с того места, где вы остановились, на любом устройстве.
  • Оптимизация изображений: Эффективная обработка и сжатие изображений для быстрой загрузки, даже при чтении объемных комиксов.
  • API и интеграции: Возможность интеграции с другими сервисами через API, например, для импорта метаданных.

Размещение Kavita на VPS предоставляет ряд ключевых преимуществ по сравнению с локальной установкой или использованием домашнего сервера:

  • Доступность 24/7: Ваш сервер будет доступен из любой точки мира в любое время, при наличии интернет-соединения.
  • Высокая скорость и стабильность: VPS-провайдеры, такие как Valebyte.com, предлагают высокоскоростные каналы и стабильное электропитание, что гарантирует бесперебойную работу и быструю загрузку контента.
  • Масштабируемость: По мере роста вашей библиотеки или увеличения числа пользователей, вы легко сможете обновить ресурсы вашего VPS (CPU, RAM, диск) без необходимости переустановки.
  • Безопасность: VPS находится в профессиональном дата-центре с физической безопасностью, а логический уровень безопасности полностью под вашим контролем.
  • Изоляция: Ваш экземпляр Kavita работает в изолированной среде, не влияя на другие сервисы на вашем VPS и не подвергаясь влиянию соседних пользователей хостинга, как это бывает на разделяемом хостинге.

Если вы уже используете другие самохостинговые решения, такие как Calibre-web для электронных книг или AudioBookshelf для аудиокниг, Kavita станет отличным дополнением для вашей медиа-экосистемы.

Kavita Self-Hosted: Полный контроль над вашей библиотекой

Самостоятельный хостинг Kavita означает, что вы полностью владеете и управляете сервером, на котором хранятся ваши данные. Это дает беспрецедентный уровень контроля над приватностью, безопасностью и конфигурацией. Вы не зависите от решений третьих сторон, их политики конфиденциальности или возможных сбоев. Все ваши комиксы и книги остаются только вашими, и вы решаете, кто и как получает к ним доступ. Для многих энтузиастов и коллекционеров это ключевой фактор при выборе платформы для своей цифровой библиотеки.

Системные требования для Kavita: какой VPS выбрать?

Выбор правильного VPS является критически важным для комфортной работы Kavita. Хотя Kavita достаточно легка, ее производительность напрямую зависит от размера вашей библиотеки и количества одновременных пользователей. Valebyte.com предлагает различные тарифные планы, которые могут подойти для Kavita.

Минимальные и рекомендуемые требования для Kavita

Прежде чем приступить к выбору VPS, рассмотрим базовые требования:

  • Процессор (CPU): Kavita активно использует CPU при сканировании библиотеки, создании миниатюр и конвертации форматов. Для небольших библиотек и 1-2 пользователей достаточно 1-2 vCPU. Для средних и больших коллекций (тысячи томов) и нескольких одновременных пользователей лучше иметь 2-4 vCPU.
  • Оперативная память (RAM): Сама Kavita потребляет относительно немного RAM (от 100 до 300 МБ в режиме ожидания), но операционная система, Docker и другие фоновые процессы также требуют памяти.
    • Минимум: 2 ГБ RAM (для небольшой библиотеки до 1000 томов, 1-2 пользователя).
    • Рекомендуется: 4 ГБ RAM (для средних библиотек до 10 000 томов, 2-5 пользователей).
    • Для больших библиотек/многих пользователей: 8 ГБ RAM и более.
  • Дисковое пространство: Это самый важный ресурс, так как комиксы и электронные книги могут занимать много места.
    • Система: Около 10-20 ГБ для ОС и Docker.
    • Библиотека: Зависит от вашего контента. Один комикс может занимать от 50 МБ до нескольких ГБ. Манга обычно легче. Электронные книги занимают меньше.
      • 1000 комиксов: 50 ГБ - 200 ГБ.
      • 10 000 комиксов: 500 ГБ - 2 ТБ.
    • Тип диска: Обязательно выбирайте VPS с NVMe SSD. Высокая скорость чтения/записи NVMe дисков критически важна для быстрого сканирования библиотеки, создания миниатюр и комфортного чтения, особенно для больших файлов изображений.
  • Сетевой канал: 100 Мбит/с или 1 Гбит/с. Чем выше, тем быстрее пользователи будут загружать контент.
  • Операционная система: Ubuntu Server (20.04 LTS или 22.04 LTS) или Debian (11 или 12) — наиболее распространенные и хорошо поддерживаемые дистрибутивы для Docker.

Таблица рекомендаций по конфигурации VPS для Kavita

Ниже представлена таблица с примерными конфигурациями VPS от Valebyte.com, которые подойдут для различных сценариев использования Kavita. Цены указаны ориентировочно и могут варьироваться.

Сценарий использования vCPU RAM (ГБ) Диск (NVMe SSD) Трафик Примерная стоимость (USD/мес)
Персональное использование (до 1000 томов, 1-2 пользователя) 2 2 100 ГБ Неограничен $5 - $10
Малая библиотека (до 5000 томов, 2-5 пользователей) 2-4 4 250 ГБ Неограничен $10 - $20
Средняя библиотека (до 20 000 томов, 5-10 пользователей) 4 8 500 ГБ Неограничен $20 - $40
Крупная библиотека (более 20 000 томов, 10+ пользователей) 6-8+ 16+ 1 ТБ+ Неограничен $40+

Для большинства пользователей, начинающих с Kavita, оптимальным выбором будет VPS с 2-4 vCPU, 4 ГБ RAM и 250 ГБ NVMe-диска. Это обеспечит хороший баланс производительности и стоимости. Обязательно убедитесь, что ваш VPS использует технологию виртуализации KVM, так как это гарантирует полную изоляцию ресурсов и лучшую производительность по сравнению с OpenVZ.

Ищете надёжный сервер для ваших проектов?

VPS от $10/мес и выделенные серверы от $9/мес с NVMe, DDoS-защитой и поддержкой 24/7.

Смотреть предложения →

Подготовка VPS к установке Kavita: Docker и Docker Compose

Развертывание Kavita через Docker является наиболее рекомендуемым и простым способом. Docker обеспечивает изоляцию приложения, упрощает управление зависимостями и облегчает обновления. Прежде чем приступить к установке Kavita, необходимо подготовить ваш VPS.

Первоначальная настройка сервера

Предполагается, что у вас есть свежеустановленный VPS с Ubuntu Server 20.04 LTS или 22.04 LTS. Подключитесь к нему по SSH.

ssh user@your_vps_ip

Обновите список пакетов и установленные пакеты:

sudo apt update
sudo apt upgrade -y

Установите необходимые утилиты, если их нет:

sudo apt install -y curl wget git nano htop

Установка Docker и Docker Compose

Docker Engine и Docker Compose — это фундамент для нашего развертывания. Если вы хотите углубиться в тему контейнеров, рекомендуем ознакомиться с нашей статьей "Контейнеры vs ВМ vs Bare-metal".

Установка Docker Engine:

Самый надежный способ — использовать официальный скрипт установки Docker:

curl -fsSL https://get.docker.com -o get-docker.sh
sudo sh get-docker.sh

Добавьте вашего пользователя в группу docker, чтобы избежать использования sudo при каждой команде Docker:

sudo usermod -aG docker $USER
newgrp docker

Проверьте, что Docker установлен корректно:

docker run hello-world

Вы должны увидеть приветственное сообщение от Docker.

Установка Docker Compose:

Docker Compose позволяет определять и запускать многоконтейнерные Docker-приложения. Для установки последней стабильной версии:

sudo apt install docker-compose-plugin -y

Проверьте версию Docker Compose (теперь это команда docker compose, а не docker-compose):

docker compose version

Вы должны увидеть что-то вроде Docker Compose version v2.x.x.

rocket_launch Быстрый выбор

Ищете сервер, который просто работает?

Valebyte VPS — NVMe, поддержка 24/7, развёртывание за 60 секунд.

Смотреть тарифы VPS arrow_forward

Как установить Kavita на VPS с Docker Compose?

Теперь, когда Docker и Docker Compose установлены, мы можем приступить к развертыванию Kavita. Мы будем использовать официальный образ Kavita и Docker Compose для удобства управления.

Создание структуры каталогов и файла docker-compose.yml

Сначала создайте директорию для Kavita, где будут храниться все ее конфигурационные файлы и данные:

mkdir -p ~/kavita/config
mkdir -p ~/kavita/library
cd ~/kavita

Здесь:

  • ~/kavita/config: Будет хранить конфигурацию Kavita, базу данных и другие важные файлы.
  • ~/kavita/library: Это директория, куда вы будете загружать свои комиксы, мангу и книги.

Создайте файл docker-compose.yml в директории ~/kavita:

nano docker-compose.yml

Вставьте следующее содержимое:

version: '3.8'
services:
  kavita:
    image: kizaing/kavita:latest
    container_name: kavita
    environment:
      - TZ=Europe/Moscow # Укажите ваш часовой пояс
    volumes:
      - ./config:/kavita/config # Хранилище конфигурации
      - ./library:/kavita/library # Ваша библиотека комиксов и книг
      # - /path/to/your/additional/library:/kavita/additional_library # Опционально: дополнительные пути к библиотекам
    ports:
      - "5000:5000" # Порт для доступа к Kavita
    restart: unless-stopped
    networks:
      - kavita_network

networks:
  kavita_network:
    driver: bridge

Сохраните и закройте файл (Ctrl+O, Enter, Ctrl+X).

Пояснения к файлу docker-compose.yml:

  • version: '3.8': Указывает версию синтаксиса Docker Compose.
  • image: kizaing/kavita:latest: Использует официальный образ Kavita. :latest означает последнюю стабильную версию.
  • container_name: kavita: Присваивает имя контейнеру для легкой идентификации.
  • environment: - TZ=Europe/Moscow: Устанавливает часовой пояс внутри контейнера. Замените на ваш.
  • volumes:: Определяет монтируемые тома. Это очень важно, так как позволяет сохранять данные Kavita вне контейнера.
    • ./config:/kavita/config: Локальная директория ~/kavita/config монтируется в /kavita/config внутри контейнера. Здесь Kavita будет хранить свою базу данных, кэш и настройки.
    • ./library:/kavita/library: Локальная директория ~/kavita/library монтируется в /kavita/library внутри контейнера. Это место для ваших медиафайлов.
    • Вы можете добавить дополнительные тома для других папок с контентом, если у вас есть несколько источников.
  • ports: - "5000:5000": Пробрасывает порт 5000 контейнера на порт 5000 хост-системы. Kavita по умолчанию работает на порту 5000.
  • restart: unless-stopped: Контейнер будет автоматически перезапускаться, если он остановится по какой-либо причине (например, после перезагрузки VPS), если только вы его не остановите вручную.
  • networks:: Определяет внутреннюю сеть для Kavita. Это полезно, если вы планируете запускать другие сервисы (например, reverse proxy) в Docker и хотите, чтобы они взаимодействовали по внутренней сети.

Запуск Kavita Docker

В директории ~/kavita, где находится ваш docker-compose.yml, выполните команду для запуска Kavita:

docker compose up -d

Эта команда скачает образ Kavita, создаст контейнер и запустит его в фоновом режиме (-d). Процесс займет некоторое время при первом запуске, так как Docker будет скачивать образ.

Проверьте статус запущенных контейнеров:

docker compose ps

Вы должны увидеть контейнер kavita со статусом Up.

Теперь Kavita доступна по IP-адресу вашего VPS на порту 5000: http://your_vps_ip:5000. Откройте этот адрес в браузере, чтобы завершить первоначальную настройку Kavita (создание администратора, добавление библиотек).

Добавление файлов в библиотеку Kavita

После успешной установки Kavita, вам нужно будет добавить ваши медиафайлы. Загрузите свои комиксы, мангу и книги в директорию ~/kavita/library на вашем VPS. Вы можете использовать SCP, SFTP (через FileZilla) или rsync для этого.

Пример загрузки через SCP:

scp -r /path/to/your/local/comics user@your_vps_ip:~/kavita/library/

После загрузки файлов зайдите в веб-интерфейс Kavita, перейдите в раздел "Libraries" и добавьте новую библиотеку, указав путь /kavita/library (или любой другой путь, который вы монтировали в контейнер).

Настройка Reverse Proxy (Nginx/Caddy) и HTTPS для Kavita

Прямой доступ к Kavita по IP-адресу и порту 5000 не является безопасным или удобным. Для обеспечения безопасного доступа по доменному имени с шифрованием (HTTPS) необходимо настроить reverse proxy. Мы рассмотрим два популярных варианта: Nginx и Caddy.

Почему нужен Reverse Proxy и HTTPS?

  • Безопасность (HTTPS): Шифрование трафика между вашим браузером и Kavita защищает ваши данные от перехвата. Let's Encrypt предоставляет бесплатные SSL/TLS сертификаты.
  • Удобство: Доступ по красивому доменному имени (например, kavita.yourdomain.com) вместо IP-адреса и порта.
  • Централизация: Reverse proxy может обслуживать несколько веб-приложений на одном VPS, направляя запросы на нужный контейнер в зависимости от доменного имени.
  • Дополнительные функции: Кэширование, балансировка нагрузки, базовая аутентификация и другие возможности.

Для этой части вам потребуется зарегистрированное доменное имя и A-запись, указывающая на IP-адрес вашего VPS (например, kavita.yourdomain.com -> your_vps_ip).

Вариант 1: Настройка Nginx в качестве Reverse Proxy

Nginx — это мощный и широко используемый веб-сервер, который отлично справляется с ролью reverse proxy. Установите Nginx, если он еще не установлен:

sudo apt install nginx -y

Создайте новый конфигурационный файл для Kavita:

sudo nano /etc/nginx/sites-available/kavita.conf

Вставьте следующее содержимое, заменив kavita.yourdomain.com на ваш домен:

server {
    listen 80;
    listen [::]:80;
    server_name kavita.yourdomain.com;

    # Перенаправление HTTP на HTTPS
    return 301 https://$host$request_uri;
}

server {
    listen 443 ssl http2;
    listen [::]:443 ssl http2;
    server_name kavita.yourdomain.com;

    ssl_certificate /etc/letsencrypt/live/kavita.yourdomain.com/fullchain.pem; # Путь к вашему сертификату
    ssl_certificate_key /etc/letsencrypt/live/kavita.yourdomain.com/privkey.pem; # Путь к вашему приватному ключу

    ssl_session_cache shared:SSL:10m;
    ssl_session_timeout 10m;
    ssl_protocols TLSv1.2 TLSv1.3;
    ssl_ciphers "ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384";
    ssl_prefer_server_ciphers off;
    ssl_stapling on;
    ssl_stapling_verify on;
    resolver 8.8.8.8 8.8.4.4 valid=300s;
    resolver_timeout 5s;

    add_header X-Frame-Options "SAMEORIGIN";
    add_header X-XSS-Protection "1; mode=block";
    add_header X-Content-Type-Options "nosniff";
    add_header Referrer-Policy "no-referrer-when-downgrade";
    add_header Content-Security-Policy "frame-ancestors 'self'";

    location / {
        proxy_pass http://localhost:5000; # Или http://kavita:5000 если Nginx тоже в Docker сети
        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;
        proxy_http_version 1.1;
        proxy_buffering off;
        proxy_read_timeout 900s;
        proxy_send_timeout 900s;
        proxy_connect_timeout 900s;
    }
}

Сохраните и закройте файл.

Получение SSL-сертификата с Let's Encrypt (Certbot)

Установите Certbot для Nginx:

sudo apt install certbot python3-certbot-nginx -y

Создайте символическую ссылку на ваш конфигурационный файл:

sudo ln -s /etc/nginx/sites-available/kavita.conf /etc/nginx/sites-enabled/

Проверьте конфигурацию Nginx на ошибки:

sudo nginx -t

Если ошибок нет, перезагрузите Nginx:

sudo systemctl reload nginx

Теперь получите SSL-сертификат:

sudo certbot --nginx -d kavita.yourdomain.com

Следуйте инструкциям Certbot. Он автоматически обновит ваш Nginx-конфиг для использования HTTPS. После этого Certbot добавит задание в cron для автоматического обновления сертификатов.

В случае, если вы используете другие сервисы, такие как Navidrome или Gitea на том же VPS, вы можете использовать тот же Nginx для их проксирования.

Вариант 2: Настройка Caddy в качестве Reverse Proxy

Caddy — это современный веб-сервер с автоматическим HTTPS (через Let's Encrypt), что делает его очень простым в настройке. Для установки Caddy, следуйте официальным инструкциям, например:

sudo apt install -y debian-keyring debian-archive-keyring apt-transport-https
curl -1sLf 'https://dl.cloudsmith.io/public/caddy/stable/gpg.key' | sudo gpg --dearmor -o /usr/share/keyrings/caddy-stable-archive-keyring.gpg
curl -1sLf 'https://dl.cloudsmith.io/public/caddy/stable/debian.deb.txt' | sudo tee /etc/apt/sources.list.d/caddy-stable.list
sudo apt update
sudo apt install caddy -y

Создайте файл Caddyfile:

sudo nano /etc/caddy/Caddyfile

Удалите существующее содержимое и вставьте следующее, заменив kavita.yourdomain.com на ваш домен:

kavita.yourdomain.com {
    reverse_proxy localhost:5000 # Или kavita:5000 если Caddy тоже в Docker сети
    # Дополнительные заголовки для безопасности (необязательно, но рекомендуется)
    header {
        X-Frame-Options SAMEORIGIN
        X-XSS-Protection "1; mode=block"
        X-Content-Type-Options nosniff
        Referrer-Policy "no-referrer-when-downgrade"
        Content-Security-Policy "frame-ancestors 'self'"
    }
}

Сохраните и закройте файл.

Проверьте конфигурацию Caddy:

sudo caddy validate --config /etc/caddy/Caddyfile

Перезапустите Caddy:

sudo systemctl restart caddy

Caddy автоматически получит и обновит SSL-сертификаты для вашего домена. Теперь Kavita будет доступна по адресу https://kavita.yourdomain.com.

Обслуживание Kavita на сервере: бэкапы и обновления

Регулярное обслуживание Kavita на сервере является ключевым для ее стабильной и безопасной работы. Это включает в себя создание резервных копий и своевременные обновления.

Резервное копирование Kavita (Бэкапы)

Резервные копии — это ваша страховка от потери данных. В случае с Kavita, наиболее важными являются база данных и конфигурационные файлы, а также сама библиотека комиксов.

Поскольку вы используете Docker Compose и монтируемые тома, процесс резервного копирования относительно прост:

  1. Остановите контейнер Kavita (опционально, но рекомендуется для консистентности базы данных):
    cd ~/kavita
    docker compose stop
  2. Создайте архив с данными:

    Архивируйте директории config и library.

    tar -czvf kavita_backup_$(date +%Y%m%d_%H%M%S).tar.gz ~/kavita/config ~/kavita/library

    Эта команда создаст архив с именем, содержащим текущую дату и время.

  3. Переместите бэкап в безопасное место:

    Не храните бэкапы на том же VPS, что и оригинальные данные. Переместите их на удаленное хранилище (S3-совместимое хранилище, FTP-сервер, Google Drive/Dropbox через rclone, или на локальный компьютер).

    scp kavita_backup_*.tar.gz user@your_backup_server:/path/to/backups/
  4. Запустите контейнер Kavita:
    cd ~/kavita
    docker compose start

Автоматизация бэкапов с помощью Cron:

Вы можете автоматизировать этот процесс, создав bash-скрипт и добавив его в планировщик Cron. Создайте файл backup_kavita.sh:

nano ~/backup_kavita.sh

Содержимое скрипта (замените /path/to/remote/backup/ на ваш путь):

#!/bin/bash

BACKUP_DIR="/root/kavita_backups" # Временная директория для бэкапов на VPS
KAVITA_DATA_DIR="/root/kavita"
TIMESTAMP=$(date +%Y%m%d_%H%M%S)
BACKUP_FILE="${BACKUP_DIR}/kavita_backup_${TIMESTAMP}.tar.gz"
REMOTE_BACKUP_TARGET="user@your_backup_server:/path/to/remote/backup/" # Пример: [email protected]:/mnt/backups/kavita/

mkdir -p "$BACKUP_DIR"

echo "Stopping Kavita container..."
docker compose -f "${KAVITA_DATA_DIR}/docker-compose.yml" stop

echo "Creating backup of Kavita data..."
tar -czvf "$BACKUP_FILE" -C "${KAVITA_DATA_DIR}" config library

echo "Starting Kavita container..."
docker compose -f "${KAVITA_DATA_DIR}/docker-compose.yml" start

echo "Transferring backup to remote storage..."
scp "$BACKUP_FILE" "$REMOTE_BACKUP_TARGET"

echo "Cleaning up local backup file..."
rm "$BACKUP_FILE"

echo "Kavita backup completed."

Сделайте скрипт исполняемым:

chmod +x ~/backup_kavita.sh

Добавьте задание в Cron (например, для ежедневного бэкапа в 3 часа ночи):

crontab -e

Добавьте строку в конец файла:

0 3 * * * /root/backup_kavita.sh > /dev/null 2>&1

Обязательно настройте SSH-доступ без пароля (SSH-ключи) для пользователя, от имени которого будет запускаться скрипт, чтобы scp мог работать автоматически.

Обновление Kavita и Docker

Регулярные обновления важны для получения новых функций, исправлений ошибок и патчей безопасности.

Обновление Kavita

Для обновления Kavita до последней версии достаточно выполнить несколько команд:

cd ~/kavita
docker compose pull # Скачивает последнюю версию образа Kavita
docker compose up -d # Пересоздает контейнер с новым образом, сохраняя данные

Kavita сама заботится о миграции базы данных при необходимости, поэтому процесс обновления обычно проходит гладко.

Обновление Docker и ОС

Важно также поддерживать в актуальном состоянии Docker Engine, Docker Compose и саму операционную систему вашего VPS:

sudo apt update
sudo apt upgrade -y

После обновления ядра ОС, может потребоваться перезагрузка VPS:

sudo reboot

После перезагрузки, убедитесь, что все Docker-контейнеры (включая Kavita) запустились автоматически (благодаря restart: unless-stopped).

rocket_launch Быстрый выбор

Ищете сервер, который просто работает?

Valebyte VPS — NVMe, поддержка 24/7, развёртывание за 60 секунд.

Смотреть тарифы VPS arrow_forward

Оптимальная конфигурация VPS для Kavita под реальную нагрузку

Выбор оптимальной конфигурации VPS для Kavita зависит от множества факторов: размер вашей библиотеки, количество активных пользователей, частота доступа, а также другие сервисы, которые могут работать на том же VPS. Для мониторинга ресурсов сервера и принятия решений по масштабированию рекомендуем использовать инструменты вроде Netdata.

Факторы, влияющие на нагрузку и выбор VPS

  1. Размер библиотеки:
    • Малая (до 1000 томов): 2 vCPU, 2-4 ГБ RAM, 100-250 ГБ NVMe.
    • Средняя (1000-10000 томов): 4 vCPU, 4-8 ГБ RAM, 250-500 ГБ NVMe.
    • Крупная (более 10000 томов): 6-8+ vCPU, 8-16+ ГБ RAM, 1 ТБ+ NVMe.

    Чем больше файлов, тем больше времени требуется на первоначальное сканирование и создание миниатюр, что нагружает CPU и дисковую подсистему. После индексации, нагрузка на CPU снижается, но запросы к диску остаются высокими при чтении.

  2. Количество одновременных пользователей:
    • 1-2 пользователя: Минимальные требования обычно достаточны.
    • 3-5 пользователей: Желательно 4 vCPU и 4 ГБ RAM для комфортной работы.
    • Более 5 пользователей: 6-8 vCPU и 8+ ГБ RAM. Каждый активный пользователь, особенно читающий тяжелые комиксы, может увеличивать потребление CPU и I/O.
  3. Тип контента:
    • Комиксы/Манга (CBR/CBZ): Обычно содержат много изображений высокого разрешения, что требует больше дискового I/O и пропускной способности сети.
    • Электронные книги (EPUB/PDF): Занимают меньше места и менее требовательны к ресурсам при чтении.
  4. Скорость дисковой подсистемы:

    Критически важен NVMe SSD. Разница между NVMe и обычными SSD или HDD будет заметна при сканировании библиотеки, загрузке страниц комиксов и работе с базой данных.

  5. Пропускная способность сети:

    Если у вас много пользователей или вы часто загружаете большие файлы, убедитесь, что ваш VPS имеет высокоскоростной сетевой канал (1 Гбит/с).

Рекомендации по масштабированию

Начните с конфигурации, которая соответствует вашим текущим потребностям, и будьте готовы масштабировать ее по мере роста. Большинство VPS-провайдеров, включая Valebyte.com, позволяют легко увеличивать ресурсы (CPU, RAM, диск) вашего сервера без переустановки ОС.

  1. Мониторинг ресурсов: Используйте htop, iotop, docker stats или Netdata для отслеживания потребления CPU, RAM и дискового I/O. Если CPU постоянно загружен на 80-100%, или I/O wait высок, это сигнал к апгрейду.
  2. Оптимизация библиотеки: Убедитесь, что ваши файлы сжаты оптимально. Некоторые пользователи переконвертируют комиксы в WebP или другие более эффективные форматы для экономии места и улучшения производительности.
  3. Кэширование: Reverse proxy (Nginx/Caddy) может быть настроен для кэширования статического контента, что снизит нагрузку на Kavita.
  4. Выделенный сервер: Для очень больших библиотек (десятки тысяч томов) и большого числа пользователей (20+), возможно, стоит рассмотреть переход на выделенный сервер. Это даст вам максимальную производительность и контроль.

Помните, что инвестиции в более производительный VPS обычно окупаются за счет более комфортного пользовательского опыта и экономии времени на ожидание загрузки.

Выводы

Установка, настройка и обслуживание Kavita на VPS через Docker Compose — это эффективный способ создать мощный и приватный медиасервер для вашей коллекции комиксов и электронных книг. Правильный выбор конфигурации VPS с NVMe-дисками, защищенный доступ через reverse proxy с HTTPS и регулярное резервное копирование обеспечат стабильную, быструю и безопасную работу вашего сервиса. Начните с базового тарифа Valebyte.com с 2-4 vCPU и 4 ГБ RAM, и масштабируйте ресурсы по мере роста вашей цифровой библиотеки и числа пользователей.

Готовы выбрать сервер?

VPS и выделенные серверы в 72+ странах с мгновенной активацией и полным root-доступом.

Начать сейчас →

Поделиться записью:

support_agent
Valebyte Support
Usually replies within minutes
Hi there!
Send us a message and we'll reply as soon as possible.