# 02_Bookstack

## bookstack

*\[Bookstack\](https://github.com/BookStackApp/BookStack) is a free and open source Wiki designed for creating beautiful documentation. Featuring a simple, but powerful WYSIWYG editor it allows for teams to create detailed and useful documentation with ease. Powered by SQL and including a Markdown editor for those who prefer it, BookStack is geared towards making documentation more of a pleasure than a chore. For more information on BookStack visit their website and check it out: https://www.bookstackapp.com*

<table id="bkmrk-imagelscr.io%2Flinuxse"><tbody><tr><th>Image</th><td>`lscr.io/linuxserver/bookstack:latest`</td></tr><tr><th>Version</th><td>v26.03.3-ls256</td></tr><tr><th>Etat</th><td><span style="color:#008000;">Up 9 hours</span></td></tr><tr><th>Compose project</th><td>bookstack</td></tr><tr><th>Reseau</th><td>bookstack\_default</td></tr><tr><th>URL</th><td>[https://bookstack.juxjux.ovh](https://bookstack.juxjux.ovh)</td></tr><tr><th>Source</th><td>[https://github.com/linuxserver/docker-bookstack](https://github.com/linuxserver/docker-bookstack)</td></tr></tbody></table>

### Ports

<table id="bkmrk-hotecontainerip68758"><thead><tr><th>Hote</th><th>Container</th><th>IP</th></tr></thead><tbody><tr><td>6875</td><td>80/tcp</td><td>0.0.0.0</td></tr><tr><td>6875</td><td>80/tcp</td><td>::</td></tr></tbody></table>

### Volumes

<table id="bkmrk-source-%28hote%29destina"><thead><tr><th>Source (hote)</th><th>Destination</th><th>Type</th><th>Mode</th></tr></thead><tbody><tr><td>`/home/debian/docker/bookstack/app`</td><td>`/config`</td><td>bind</td><td>rw</td></tr></tbody></table>

---

## bookstack\_db

*\[Mariadb\](https://mariadb.org/) is one of the most popular database servers. Made by the original developers of MySQL.*

<table id="bkmrk-imagelscr.io%2Flinuxse-1"><tbody><tr><th>Image</th><td>`lscr.io/linuxserver/mariadb:latest`</td></tr><tr><th>Version</th><td>11.4.9-r0-ls212</td></tr><tr><th>Etat</th><td><span style="color:#008000;">Up 9 hours</span></td></tr><tr><th>Compose project</th><td>bookstack</td></tr><tr><th>Reseau</th><td>bookstack\_default</td></tr><tr><th>URL</th><td>[https://bookstack.juxjux.ovh](https://bookstack.juxjux.ovh)</td></tr><tr><th>Source</th><td>[https://github.com/linuxserver/docker-mariadb](https://github.com/linuxserver/docker-mariadb)</td></tr></tbody></table>

### Volumes

<table id="bkmrk-source-%28hote%29destina-1"><thead><tr><th>Source (hote)</th><th>Destination</th><th>Type</th><th>Mode</th></tr></thead><tbody><tr><td>`/home/debian/docker/bookstack/db`</td><td>`/config`</td><td>bind</td><td>rw</td></tr></tbody></table>

---

## Integration Claude Code — MCP

<table id="bkmrk-statut-mcpmcp-actifo"><tbody><tr><th>Statut MCP</th><td><span style="color:#008000;">MCP actif</span></td></tr><tr><th>Outils (prefix)</th><td>`bookstack MCP (npm bookstack-mcp-server)`</td></tr><tr><th>Configuration</th><td>npm via npx -y bookstack-mcp-server | Projet Claude Code : C:\\Users\\eliob | Auth : Token ID + Secret en variables d'environnement (.claude.json)</td></tr></tbody></table>

### Outils disponibles

- `list_books`
- `get_book`
- `list_chapters`
- `get_chapter`
- `list_pages`
- `get_page`
- `create_page`
- `update_page`
- `search`
- `get_shelves`

### Ce que nous pouvons faire ensemble

- Lire et écrire des pages de documentation directement depuis Claude Code
- Créer et organiser des livres, chapitres et pages
- Rechercher du contenu dans toute la base de connaissance
- Auto-documenter des projets ou des sessions de travail
- Mettre à jour cette page et les autres pages containers automatiquement

---

## Sauvegarde de la base de données

Sauvegarde automatique quotidienne de la base MariaDB `bookstackapp` vers kDrive Infomaniak. Mise en place le 2026-06-01.

### Paramètres

<table id="bkmrk-script%2Fopt%2Fbackups%2Fb"><tbody><tr><th>Script</th><td>`/opt/backups/bookstack_backup.sh`</td></tr><tr><th>Cron</th><td>Tous les jours à 2h du matin (`0 2 * * *`)</td></tr><tr><th>Base sauvegardée</th><td>`bookstackapp` — container `bookstack_db` (MariaDB)</td></tr><tr><th>Taille base (disque)</th><td>~203 Mo</td></tr><tr><th>Format archive</th><td>.7z (compression niveau 5) — ~564 Ko</td></tr><tr><th>Destination</th><td>kDrive Infomaniak — `TOOJUX/jux_vps/bookstack` (dossier ID 1427916)</td></tr><tr><th>Rétention</th><td>7 jours glissants (purge automatique des anciens fichiers)</td></tr><tr><th>Log</th><td>`/opt/backups/backup.log`</td></tr><tr><th>Nommage fichier</th><td>`bookstack_db_YYYY-MM-DD.7z`</td></tr></tbody></table>

### Fonctionnement du script

1. Exécute `mysqldump` depuis le container `bookstack_db` vers `/tmp/`
2. Compresse en `.7z` avec `7z` (déjà installé sur le VPS)
3. Upload sur kDrive via l'API REST Infomaniak (`POST /3/drive/{id}/upload`) avec le paramètre `total_size`
4. Supprime le fichier temporaire local
5. Purge les fichiers kDrive nommés `bookstack_db_*` de plus de 7 jours

### Consulter les logs

```
ssh debian@51.77.141.54 "tail -50 /opt/backups/backup.log"
```

### Relancer manuellement

```
ssh debian@51.77.141.54 "bash /opt/backups/bookstack_backup.sh"
```