---
title: "Kavita avec Docker Compose et hébergement en un clic"
description: "Kavita, serveur de lecture open source pour mangas, BD, EPUB et PDF, aux liseuses rapides dans le navigateur. Auto-hébergez votre bibliothèque en un clic."
---

[← Tous les templates](https://pethost.dev/fr/templates/) · [Médias](https://pethost.dev/fr/templates/media/)

# Déployez Kavita en un clic

Un serveur de lecture pour mangas, BD et livres, avec des liseuses dans le navigateur pour tous les appareils

Une alternative auto-hébergée à Kindle et Comixology.

[Déployer sur Pethost](https://console.pethost.dev/?template=kavita)

## Qu’est-ce que Kavita ?

Kavita est un serveur de lecture open source pour mangas, webtoons, BD et livres. Il lit les fichiers là où ils sont : archives CBZ, CBR, ZIP, RAR et 7-Zip et dossiers d’images pour les BD, EPUB et PDF pour les livres. Il les regroupe en séries avec leurs couvertures et leurs métadonnées, et les sert à des liseuses dans le navigateur, qui fonctionnent sur téléphone, tablette et ordinateur. Les liseuses ont un mode webtoon, un mode continu qui enchaîne sur le chapitre suivant, et des surlignages et des annotations dans les livres EPUB.

Vous faites tourner Kavita pour lire votre collection partout et la partager avec votre famille et vos amis : chaque utilisateur a sa propre progression, et des rôles limitent ce que chacun voit et fait, restriction d’âge comprise. Les collections, les listes de lecture, « À lire » et les filtres intelligents organisent une grande bibliothèque, et des thèmes changent son apparence. Kavita+, un abonnement payant, ajoute des métadonnées, des avis et des recommandations venus d’internet ; tout le reste est gratuit.

Ce template lance l’image officielle de Kavita, version 0.9.1, avec sa base de données et ses réglages dans un volume et vos livres dans un autre. L’administrateur est enregistré à partir du nom d’utilisateur, de l’e-mail et du mot de passe que vous indiquez, avant que Kavita ne réponde à quiconque.

## Hébergement de Kavita sur Pethost

1. Vous vous connectez à Pethost avec une clé d’accès, GitHub ou Google. Pas encore de machine ? Vous choisissez une offre, et le lien attend qu’elle soit prête.
2. Nouveau projet s’ouvre sur Kavita. Vous remplissez ce qu’il demande et cliquez sur Créer le projet : **Nom d’utilisateur**, **E-mail**, **Mot de passe administrateur**.
3. En une minute ou deux, Kavita tourne à sa propre adresse en HTTPS. Ses secrets sont créés au hasard, et ses données sont dans la sauvegarde nocturne.
4. C’est un projet comme les autres : vous ou votre agent pouvez le modifier, revenir à une version précédente ou le restaurer.

## Questions sur Kavita

**Kavita est-il gratuit ?**

Oui. Kavita est open source sous licence GPL-3.0 et gratuit à faire tourner, avec toutes ses liseuses et toutes les fonctionnalités pour les utilisateurs. Kavita+ est un abonnement payant facultatif pour les métadonnées, les avis, les recommandations et le suivi d’activité (scrobbling) vers AniList et d’autres services.

**Quels formats Kavita lit-il ?**

Les BD et les mangas en archives CBZ, CBR, ZIP, RAR, RAR5 et 7-Zip ou en dossiers d’images, et les livres en EPUB et en PDF. Kavita lit les fichiers tels qu’ils sont, sans les convertir.

**Comment ajouter des livres à Kavita ?**

Mettez les fichiers dans le dossier de la bibliothèque, chaque série ou livre dans son propre dossier, puis ajoutez ce dossier comme bibliothèque dans Paramètres → Bibliothèques. Kavita le scanne alors, puis à nouveau quand des fichiers changent.

**Kavita ou Komga : lequel choisir ?**

Les deux servent BD, mangas et livres, EPUB et PDF compris, à des liseuses dans le navigateur et à des applications OPDS. Les liseuses de Kavita ajoutent un mode webtoon, la lecture continue jusque dans le chapitre suivant, et des surlignages et des annotations dans les livres EPUB ; Kavita+ vend des métadonnées venues d’internet, alors que Komga n’a aucune formule payante.

**Puis-je partager ma bibliothèque Kavita avec d’autres ?**

Oui. L’administrateur invite des utilisateurs dans Paramètres → Utilisateurs, et choisit les bibliothèques que chacun voit ainsi que ses rôles, comme le téléchargement ou une restriction d’âge. Chaque utilisateur garde sa propre progression de lecture.

**De combien de mémoire et de disque Kavita a-t-il besoin ?**

Kavita est léger : environ 250 MB de mémoire pendant la lecture, davantage pendant le scan d’une bibliothèque ; vos livres prennent la place de leurs fichiers. Sur Pethost, l’offre Starter lui suffit, avec de la place pour d’autres applications à côté.

## Le fichier Docker Compose de Kavita

Le template, c’est ce compose.yaml et les variables écrites dans le .env du projet à sa création. Pethost exécute le fichier tel qu’il est écrit.

**Conteneurs :** kavita (jvmilazz0/kavita:0.9.1).

**Volumes, dans la sauvegarde nocturne :** config, books.

```
services:
  kavita:
    image: jvmilazz0/kavita:0.9.1
    restart: unless-stopped
    environment:
      ADMIN_USERNAME: ${ADMIN_USERNAME}
      ADMIN_EMAIL: ${ADMIN_EMAIL}
      ADMIN_PASSWORD: ${ADMIN_PASSWORD}
      TZ: Etc/UTC
    # A new Kavita lets whoever opens it first register as its admin. So until the admin exists,
    # Kavita runs on 127.0.0.1:5001, which nobody reaches, where the admin is registered from the
    # fields; only then does it start as the image starts it, answering on 5000. Kavita reads the
    # port and address of its appsettings.json only when it does not know it is in a container.
    # A refusal stops the start with Kavita's reason in the log.
    entrypoint:
      - /bin/bash
      - -c
      - |
        set -e
        cd /kavita
        if [ ! -f config/admin-registered ]; then
          if [ ! -f config/appsettings.json ]; then
            cp /tmp/config/appsettings.json config/appsettings.json
          fi
          sed -i -e 's/"Port": *[0-9]*/"Port": 5001/' -e 's/"IpAddresses": *"[^"]*"/"IpAddresses": "127.0.0.1"/' config/appsettings.json
          env -u DOTNET_RUNNING_IN_CONTAINER ./Kavita &
          kavita=$$!
          until curl -sf -o /dev/null http://127.0.0.1:5001/api/health; do
            kill -0 $$kavita
            sleep 1
          done
          json() {
            local s=$${1//\\/\\\\}
            s=$${s//\"/\\\"}
            printf '"%s"' "$$s"
          }
          body="{\"username\":$$(json "$$ADMIN_USERNAME"),\"email\":$$(json "$$ADMIN_EMAIL"),\"password\":$$(json "$$ADMIN_PASSWORD")}"
          status=$$(curl -s -o /tmp/register -w '%{http_code}' -H 'Content-Type: application/json' -d "$$body" http://127.0.0.1:5001/api/Account/register)
          kill $$kavita
          wait $$kavita || true
          sed -i -e 's/"Port": *[0-9]*/"Port": 5000/' -e 's/"IpAddresses": *"[^"]*"/"IpAddresses": ""/' config/appsettings.json
          # 400 "denied": an admin exists already, registered by an earlier start.
          if [ "$$status" != 200 ] && ! grep -qi denied /tmp/register; then
            echo "Kavita refused the admin ($$status): $$(cat /tmp/register)"
            exit 1
          fi
          touch config/admin-registered
        fi
        exec /entrypoint.sh
    volumes:
      - config:/kavita/config
      # Writable, so that books can be uploaded or copied in over SFTP.
      - books:/books
volumes:
  config:
  books:
```

[compose.yaml](https://pethost.dev/templates/kavita/compose.yaml)[Le voir sur GitHub](https://github.com/pethost-dev/templates/tree/main/kavita)

## [Aussi dans Médias](https://pethost.dev/fr/templates/media/)

- [**Owncast**Vidéo en direct et chat sur votre propre page](https://pethost.dev/fr/templates/owncast/)
- [**Navidrome**Un serveur de musique qui diffuse votre propre collection](https://pethost.dev/fr/templates/navidrome/)
- [**RomM**Une bibliothèque et un lecteur dans le navigateur pour vos jeux rétro](https://pethost.dev/fr/templates/romm/)
- [**Komga**Un serveur et une liseuse web pour vos BD, mangas et livres numériques](https://pethost.dev/fr/templates/komga/)
- [**Lychee**Une galerie pour téléverser, classer et partager vos photos](https://pethost.dev/fr/templates/lychee/)
- [**Audiobookshelf**Votre propre serveur de livres audio et de podcasts : écoutez dans le navigateur ou les applis, avec la progression gardée d’un appareil à l’autre](https://pethost.dev/fr/templates/audiobookshelf/)

Pethost · Stephan Gomer · NIP 1133096755

Pethost

- [Templates](https://pethost.dev/fr/templates/)
- [À propos](https://pethost.dev/about/)
- [Docs](https://pethost.dev/docs/)
- [Blog](https://pethost.dev/fr/blog/)
- [API](https://pethost.dev/docs/api/)
- [CLI](https://pethost.dev/docs/cli/)
- [Plugin](https://github.com/pethost-dev/plugin)
- [Conditions](https://pethost.dev/terms/)
- [Confidentialité](https://pethost.dev/privacy/)
- [Remboursements](https://pethost.dev/refunds/)
- [support@pethost.dev](mailto:support@pethost.dev)

Bases de données

- [Postgres](https://pethost.dev/fr/postgres/)

Comparatifs

- [Coolify vs Dokploy vs CapRover vs Dokku](https://pethost.dev/fr/blog/coolify-vs-dokploy-vs-caprover-vs-dokku/)
- [Coolify Cloud vs Dokploy Cloud](https://pethost.dev/fr/blog/coolify-cloud-vs-dokploy-cloud/)
- [Tarifs Railway vs Render vs Fly.io](https://pethost.dev/fr/blog/railway-vs-render-vs-fly-io-pricing/)
- [Hébergement Docker Compose managé](https://pethost.dev/fr/blog/managed-docker-compose-hosting/)

Alternatives

- [Alternatives à Railway](https://pethost.dev/fr/blog/railway-alternatives/)
- [Alternatives à Heroku](https://pethost.dev/fr/blog/heroku-alternatives/)
- [Alternatives à Dokploy](https://pethost.dev/fr/blog/dokploy-alternatives/)
- [Alternatives à Coolify](https://pethost.dev/fr/blog/coolify-alternatives/)
- [Alternatives à Render](https://pethost.dev/fr/blog/render-alternatives/)
- [Alternatives à Sliplane](https://pethost.dev/fr/blog/sliplane-alternatives/)
