22_Readeck

readeck

Imagecodeberg.org/readeck/readeck:latest
EtatUp 9 hours
Compose projectreadeck
Reseaureadeck_default
URLhttps://readeck.juxjux.ovh

Ports

HoteContainerIP
45678000/tcp0.0.0.0
45678000/tcp::

Volumes

Source (hote)DestinationTypeMode
/home/debian/readeck/exports/exportsbindrw
/readeckvolumerw
/home/debian/readeck/data/readeck/databindrw

Integration Claude Code — MCP

Statut MCPMCP actif
Outils (prefix)mcp__readeck__
ConfigurationScript Python : C:\Users\eliob\.claude\mcp_readeck.py | Auth : token API Bearer (MFA actif sur le compte web)

Outils disponibles

Ce que nous pouvons faire ensemble


Sauvegarde de la base de données

Sauvegarde automatique quotidienne de la base SQLite de Readeck vers kDrive Infomaniak. Mise en place le 2026-06-01.

Paramètres

Script/opt/backups/vps_backup.sh
CronTous les jours à 2h du matin (0 2 * * *)
Type baseSQLite — /readeck/data/db.sqlite3 (dans le container)
Méthodedocker cp readeck:/readeck/data/db.sqlite3
Taille base~8.5 Mo
Format archive.7z (compression niveau 5)
DestinationkDrive Infomaniak — TOOJUX/jux_vps/readeck (dossier ID 1427922)
Rétention7 jours glissants
Nommage fichierreadeck_db_YYYY-MM-DD.7z

Note

Le volume /readeck (non bindé) contient les fichiers des articles (images, HTML). La base SQLite ne couvre que les métadonnées et le texte extrait — les contenus médias ne sont pas inclus dans ce backup.


Incident résolu — pages trop lourdes rejetées (2026-08-20)

Symptôme : l'extension navigateur Readeck échouait à sauvegarder certaines pages, avec une erreur indiquant une page trop lourde.

Cause

Le vhost nginx qui sert readeck.juxjux.ovh (fichier trompeur sites-enabled/radicale.juxjux.ovh, voir plus haut) n'avait pas de directive client_max_body_size. Nginx applique alors sa limite par défaut de 1 Mo. L'extension navigateur envoie le contenu complet de la page (DOM) en POST plutôt qu'une simple URL — une page riche en images dépasse facilement ce seuil, d'où un rejet (413) que l'extension affiche comme « page trop lourde ».

Correctif

Fichiersites-enabled/radicale.juxjux.ovh
ModificationAjout de client_max_body_size 100M; dans le bloc serveur 443, juste après server_name readeck.juxjux.ovh;
Sauvegarde/home/debian/nginx-backups/radicale.juxjux.ovh.bak-260820
Vérificationsudo nginx -t puis sudo nginx -s reload, testé en conditions réelles — la sauvegarde de pages précédemment refusées fonctionne

Piège rencontré : le premier fichier de sauvegarde a été déposé par erreur dans sites-enabled/ lui-même. Comme nginx inclut sites-enabled/* sans filtrer sur l'extension, ce doublon a déclenché un warning conflicting server name. Toujours sauvegarder les fichiers de vhost en dehors de sites-enabled/ (ex. /home/debian/nginx-backups/).

Si une page dépasse encore 100 Mo, augmenter la valeur dans ce même fichier puis recharger nginx.


Revision #5
Created 2026-05-29 09:41:36 UTC by Julien
Updated 2026-08-20 08:04:46 UTC by Julien