Auto-hébergement

Hold My Docs stocke les pages wiki en commits Git pour une récupération facile

Un nouveau wiki auto-hébergé nommé Hold My Docs enregistre chaque modification de page sous forme de commit Git, garantissant l'accessibilité de la documentation même si l'application tombe en panne.

Illustration de documents papier se transformant en branches git à l'intérieur d'une baie serveur
Illustration créée pour cet article

Traduit automatiquement depuis l’original en anglais.

Hold My Docs est un nouvel outil open source conçu pour résoudre le problème courant de la perte ou de l'inaccessibilité de la documentation serveur. Publié fin octobre 2026, ce wiki auto-hébergé stocke tout le contenu sous forme de fichiers Markdown standards dans un dépôt Git, plutôt que de les dissimuler dans une base de données propriétaire. Cette approche garantit que les notes techniques restent lisibles et versionnées, même si l'interface web devient indisponible.

Ce qui s'est passé

L'innovation majeure de Hold My Docs réside dans son mécanisme de stockage. Au lieu de dépendre d'un schéma de base de données complexe pour gérer le contenu, l'application écrit chaque sauvegarde de page directement dans un dépôt Git. Cela signifie que chaque modification crée un nouveau commit, offrant un historique complet des changements sans nécessiter d'outils de sauvegarde supplémentaires. Les utilisateurs peuvent parcourir cet historique via l'interface web ou accéder aux fichiers bruts directement depuis le système de fichiers du serveur.

Cette conception répond à un point de douleur fréquent pour les passionnés de homelab et les petites équipes IT : la dégradation de la documentation. Lorsque les serveurs changent, les configurations évoluent et les anciennes notes deviennent obsolètes. Avec Hold My Docs, les administrateurs peuvent revenir aux versions précédentes d'une page si une nouvelle configuration échoue ou s'ils ont besoin de se rappeler pourquoi un paramètre spécifique a été choisi il y a des mois. L'application prend également en charge la synchronisation avec des dépôts Git distants, permettant aux équipes de maintenir automatiquement une copie hors site de leur base de connaissances.

Au-delà du simple stockage de texte, l'outil propose un éditeur Markdown basé sur navigateur avec aperçu en direct. Il prend en charge les liens internes et les backlinks, aidant les utilisateurs à connecter des sujets liés. Une fonctionnalité notable est la prise en charge des diagrammes Mermaid, qui permet aux ingénieurs de dessiner des topologies réseau ou des architectures de services directement dans leurs notes. Cela élimine le besoin d'un logiciel de diagramme séparé et maintient la documentation visuelle aux côtés des instructions textuelles.

Détails clés

  • Backend de stockage : Toutes les pages wiki sont stockées sous forme de fichiers Markdown simples dans un dépôt Git local.
  • Contrôle de version : Chaque action de sauvegarde génère un commit Git, permettant un suivi complet de l'historique et des capacités de retour en arrière (rollback).
  • Options de déploiement : L'application est écrite en Go et peut fonctionner comme binaire autonome ou via une configuration Docker Compose officielle.
  • Authentification : Prend en charge les comptes utilisateurs locaux et OpenID Connect (OIDC) pour l'intégration avec les fournisseurs d'identité existants.
  • Capacités de recherche : Inclut une recherche plein texte pour les pages wiki, avec une intégration optionnelle Apache Tika pour indexer les documents PDF et Office.
  • Fonctionnalités d'exportation : Les utilisateurs peuvent exporter des namespaces entiers sous forme de sites web statiques pour un partage public sans exposer l'application wiki.

Contexte

Pour comprendre la valeur de Hold My Docs, il est utile de reconnaître les limites des logiciels wiki traditionnels. Beaucoup de wikis auto-hébergés stockent le contenu dans des bases de données comme SQLite ou PostgreSQL. Bien qu'efficaces pour les requêtes, cela rend les données difficiles à accéder en dehors de l'application. Si le logiciel wiki tombe en panne ou n'est plus supporté, extraire le contenu peut être difficile. En utilisant Git, Hold My Docs tire parti d'une technologie que la plupart des développeurs et administrateurs système connaissent déjà et en laquelle ils ont confiance.

Git est un système de contrôle de version distribué largement utilisé pour le développement logiciel. Il suit les modifications apportées aux fichiers au fil du temps, permettant aux utilisateurs de voir qui a changé quoi et quand. En traitant la documentation comme du code, Hold My Docs garantit que les données restent portables. Markdown est un langage de balisage léger, facile à lire en format texte brut. La combinaison de ces deux technologies crée un système de documentation résilient et pérenne, réduisant le risque d'enfermement propriétaire (vendor lock-in).

Pourquoi c'est important

Pour les équipes qui gèrent leur propre logiciel, l'accessibilité lors des pannes est critique. Si votre serveur de documentation tombe, vous avez souvent besoin de cette documentation pour réparer le serveur. Hold My Docs atténue ce cercle vicieux en conservant les fichiers sous-jacents dans un format standard. Même si l'interface web est inaccessible, un administrateur peut se connecter en SSH au serveur, naviguer vers le dépôt Git et lire les fichiers Markdown directement. Cette résilience est un avantage significatif par rapport aux solutions basées sur des bases de données.

De plus, la séparation des préoccupations entre informations privées et publiques est simplifiée grâce aux namespaces. Les administrateurs peuvent conserver des identifiants de serveur sensibles et des cartes réseau internes dans un namespace privé, tout en exportant des notes domestiques non sensibles ou des notes de projet générales sous forme de site statique. Cette flexibilité permet aux organisations de partager des connaissances en externe sans compromettre la sécurité ni maintenir des systèmes séparés.

L'intégration optionnelle du serveur MCP (Model Context Protocol) pointe également vers des workflows futurs où les assistants IA peuvent interroger la documentation de manière sécurisée. Cependant, cela nécessite une gestion rigoureuse des permissions pour empêcher les outils IA d'accéder à des détails d'infrastructure sensibles. La conception de l'outil encourage une approche disciplinée de la documentation, facilitant le maintien de registres précis au fil du temps.

Ce que vous pouvez faire

  • Tester le déploiement Docker : Utilisez le fichier Docker Compose officiel pour lancer une instance locale et évaluer l'interface sans vous engager dans une configuration à long terme.
  • Configurer le stockage local avec soin : Assurez-vous que le répertoire de données de l'application réside sur un stockage local plutôt que sur NFS pour éviter les problèmes de performance, bien que le dépôt Git puisse se synchroniser avec un stockage réseau.
  • Mettre en place OIDC tôt : Intégrez votre fournisseur d'identité existant lors de la configuration initiale pour rationaliser la gestion des utilisateurs et éviter de gérer des comptes locaux séparés.
  • Activer les diagrammes Mermaid : Commencez à documenter les structures réseau en utilisant la syntaxe Mermaid dans vos pages pour garder les aides visuelles synchronisées avec le texte.
  • Planifier des sauvegardes régulières : Bien que Git fournisse un historique, maintenez des sauvegardes externes du dépôt pour protéger contre la défaillance matérielle physique.
  • Examiner les permissions avant d'activer MCP : Si vous prévoyez d'utiliser l'intégration IA, limitez strictement l'accès aux namespaces non sensibles pour protéger les données d'infrastructure privées.

Autres actualités

Toutes les actualités