Wiki
BookStack est une plateforme open source, auto-hébergée, conçue pour organiser et stocker de l'information de manière structurée. Elle s'inspire de la métaphore d'une bibliothèque : les contenus sont regroupés en étagères, qui contiennent des livres, eux-mêmes composés de chapitres et de pages. Chaque page peut contenir du texte, des images, des tableaux, du code ou des documents, édités via un éditeur WYSIWYG (ou en Markdown).
Elle est idéale pour remplacer des outils comme Confluence ou XWiki, en offrant une gestion documentaire simple, sécurisée et collaborative. BookStack permet de gérer des droits d'accès précis, de rechercher facilement du contenu, d'importer des fichiers ...
Caractéristiques
- Éditeur WYSIWYG : L'éditeur permet de rédiger du texte comme dans un traitement de texte, avec mise en forme, insertion d'images, tableaux, et support du Markdown pour les utilisateurs avancés.
- Recherche avancée : Une fonction de recherche en texte intégral permet de retrouver rapidement des informations à travers tous les livres, chapitres et pages.
- Gestion des droits d'accès : Contrôle précis des permissions (lecture, édition, suppression) par utilisateur ou groupe, idéal pour des environnements collaboratifs ou sensibles.
- Personnalisation : Possibilité de modifier le nom, le logo, les couleurs, et d'activer/désactiver des fonctionnalités comme les commentaires ou l'inscription publique.
- Intégration et connectivité : Supporte l'authentification via Google, GitHub, LDAP, SSO, et peut être intégré à des services comme Google Drive ou WordPress.
- Sécurité renforcée : Fonctionnalités de chiffrement, pare-feu, détection d'attaques, et planification de sauvegardes automatisées.
- Multi-langues : Disponible dans 43 langues, y compris le français, l'anglais, l'allemand, l'espagnol, etc.
- Technologie : Développé en PHP (avec le framework Laravel), fonctionne sur MySQL ou MariaDB, et peut être déployé via Docker ou sur un VPS
Illustration de BookStack sur bookstackapp.com
Configuration Console
Pour cette application, l'App Store propose BookStack sous deux formes :
par LinuxServer.io et par BigBearCasaOS - cette dernière, couplée à une Base de Données est fonctionnelle.
Je vous propose pour cet article, une configuration de BookStack basée sur le compose proposé par Dan Brown (développeur de BookStack) et complété de 2 options :
- Exposer votre BookStack via un NDD et,
- Être notifié par courriel
Vous pouvez compléter vos options avec un fichier .env proposé en suivant ce lien.
Proxy Inversé
Configurer le Proxy Inversé en liant un NDD, Sous domaine ou Wildcard dédié. Le port local est déterminé pour cet article à 6868 en http avec l'IP locale de la machine hôte et, validez le Websockets Support.
NB BookStack fonctionne aussi en mode local (sans l'exposer sur internet).
Compose YAML
Copiez collez le code YAML ci-dessous pour une installation personnalisée en important le code (voir méthode sur Mazanoke par exemple)
name: bookstack
services:
bookstack:
cpu_shares:
command: []
container_name: bookstack
depends_on:
bookstack-db:
condition: service_started
required: true
deploy:
resources:
limits:
memory:
reservations:
devices: []
environment:
- APP_KEY=base64:cjHcV6x5p3rk1mO8almojz/gnC010cntj/aasAE9keM
- APP_URL=https://wiki.ndd.fr:443
- DB_DATABASE=bookstackapp
- DB_HOST=bookstack-db
- DB_PASSWORD=casaos123
- DB_USERNAME=bookstack
- MAIL_DRIVER=smtp
- MAIL_ENCRYPTION=tls
- MAIL_FROM=
- MAIL_FROM_NAME=
- MAIL_HOST=
- MAIL_PASSWORD=
- MAIL_PORT=465
- MAIL_USERNAME=
- PGID=
- PUID=
- TZ=Europe/Paris
hostname: bookstack
image: linuxserver/bookstack:latest
labels:
icon: https://cdn.jsdelivr.net/gh/selfhst/icons/png/bookstack.png
ports:
- mode: ingress
target: 80
published: "6868"
protocol: tcp
restart: unless-stopped
volumes:
- type: bind
source: /DATA/AppData/bookstack/config
target: /config
bind:
create_host_path: true
devices: []
cap_add: []
networks:
- bookstack_network
privileged: false
bookstack-db:
cpu_shares:
command: []
container_name: bookstack-db
deploy:
resources:
limits:
memory:
reservations:
devices: []
environment:
- MYSQL_DATABASE=bookstackapp
- MYSQL_PASSWORD=casaos123
- MYSQL_ROOT_PASSWORD=zimaos12345678
- MYSQL_USER=bookstack
- PGID=
- PUID=
- TZ=Europe/Paris
hostname: bookstack-db
image: linuxserver/mariadb:latest
labels:
icon: https://cdn.jsdelivr.net/gh/selfhst/icons/png/bookstack.png
restart: unless-stopped
volumes:
- type: bind
source: /DATA/AppData/bookstack/mysql
target: /config
bind:
create_host_path: true
ports: []
devices: []
cap_add: []
networks:
- bookstack_network
privileged: false
networks:
bookstack_network:
name: bookstack_bookstack_network
driver: bridge
x-casaos:
architectures:
- amd64
- arm64
author: null
category: null
developer: Dan Brown
hostname:
icon: https://cdn.jsdelivr.net/gh/selfhst/icons/png/bookstack.png
index: /
is_uncontrolled: false
main: bookstack
port_map: "6868"
scheme: http
store_app_id: bookstack
title:
custom: BOOKSTACK
Paramètres onglet bookstack
1. Indiquez sur la Web UI
https + ndd + 443
ou si seulement accès local : http + ip-locale + 6868
2. Pour les Variables d'environnement
APP-KEY = vous pouvez générer votre propre clé sur ce site
APP_URL = https://ndd:443
(ou si locale = http://ip-locale:6868)
Voir et à adapter en fonction votre hébergeur de messagerie
MAIL_FROM = votre-email@ndd.com
MAIL_FROM_NAME = nom ou pseudo
MAIL_HOST = adresse hôte de messagerie
MAIL_PASSWORD = mot de passe de l'adresse courriel
MAIL_PORT = 465 (généralement avec TLS) ou 587
MAIL_USERNAME = votre-email@ndd.com (ou autre suivant hébergeur)
et indiquez vos PGID et PUID
Paramètres onglet bookstack-db
3. Pour les Variables d'environnement de cet onglet
indiquez vos PGID et PUID
Installer
Cliquez sur Installer et patientez le temps de l’installation
Ouvrir BookStack
Puis, cliquez sur la nouvelle tuile créée pour ouvrir une nouvelle page web
Configuration
Compte Administrateur
Sur la fenêtre de connexion indiquez pour l'E-mail : admin@admin.com et pour le mot de passe : password puis, Se connecter
Sur l'interface de BookStack, rendez-vous en haut à droite sur Admin puis sélectionnez My Account
Sur le panneau, changer Nom, Email, Avatar, Language puis, Save
Sur Accès et Sécurité indiquez votre nouveau mot de passe + confirmation + Modifier
Optionnel : Vous pouvez aussi renforcer l'accès à votre compte Administrateur (Multi-facteurs, API)
Vous pouvez aussi indiquer vos préférences de notifications ainsi que celles des raccourcis.
Préférences des fonctionnalités
Sur la barre de menus en haut à droite sélectionnez Préférences et indiquez suivant votre projet, accès public, commentaires ...
Vous pouvez personnaliser à votre convenance l'interface (Titre, Logo, Icône, couleur, mode clair/sombre etc.)
Autoriser l'inscription ...

Ouvrez à présent l'onglet Maintenance et cliquez sur Envoyer un e-mail test
Et vérifiez la bonne réception de celui-ci
Vous pouvez découvrir les autres fonctionnalités à configurer en fonction de votre utilisation de BookStack.
Création de contenus
Comme indiqué dans le descriptif, BookStack s'organise à l'image d'une bibliothèque par des étagères -> des Livres -> des chapitres -> des pages
1. Sur la page d'accueil de BookStack cliquez sur le menu en haut à droite et créez une étagère thématique (vous pouvez adjoindre une image et des étiquettes)

2. Au sein de la fenêtre de la nouvelle étagère créée, cliquez sur Créez un nouveau livre, Nommez le (vous pouvez aussi adjoindre une image de couverture, étiquettes et un modèle de page)
3. Enregistrez le livre et Créez une page

Dans les paramètres vous pouvez choisir quelle sera la page d'accueil (soit par la présentation des étagères ou des livres). Profitez de BookStack !
















