MàJ : le script fonctionne avec RHEL 8 (et équivalents), CentOS 8 étant un OS abandonné.
Il y a quelques mois j'ai découvert BookStack, un outil de base de connaissance open-source plutôt sexy.
C'est une évolution du wiki, il ajoute de nombreuses fonctionnalités comme l'historique, révisions, commentaires, etc. Mais surtout est il est très simple à utiliser, ça en fait un excellent outil. Si vous avez horreur de la syntaxe wiki, alors vous allez l'adorer avec son interface WYSIWSG.
J'ai un peu galéré à l'installer donc j'ai développé un script d'installation automatisé pour RedHat Like : Oracle Linux, Rocky Linux, Alma Linux, etc.
A quoi ressemble BookStack?
Pour tester BookStack rendez-vous sur la démonstration.
RHEL 8
Avant tout, faites un snapshot car si le script se plante au milieu, peu importe la raison, il est préférable de recommencer sans trace.
J'ai créé ce script pour simplifier l'installation sur une distribution RHEL Like (RHEL 8.x uniquement) :
➡️ Récupérez le script : github.com (raw)
Rendez-le exécutable et exécutez-le en tant que root :
chmod +x bookstack-*RHEL8.sh && ./bookstack-*RHEL8.sh
Le script automatise ni plus ni moins tout ce que vous êtes censés faire manuellement.
Authentification sur un Active Directory (LDAP)
J'ai ajouté la configuration nécessaire pour connecter BookStack à votre annuaire AD directement sur la page github du projet. En effet il y a pas mal d'options et j'ai mis un petit moment à arriver sur un fonctionnement attendu.
La seule chose que je n'ai pas réussi à faire c'est mapper les permissions des comptes utilisateurs avec un groupe AD, j'ai beau remplir le DN du groupe ça ne fonctionne pas. Du coup je configure les permissions à la main, une fois que l'utilisateur s'est enregistré pour la première fois et a confirmé son compte par email. Pour une petite équipe ça passe, donc je n'ai pas cherché plus.
Attention aussi à la spécificité pour vous reconnecter avec le compte admin local... une fois en mode domaine il devient inactif. Il faut soit jouer avec la configuration (cf commentaires), soit créer un compte AD et le déclarer comme admin local (ce que je vous conseille).
Conclusion
Je vous laisse tester tout ça et me faire un retour, voir un pull-request si vous souhaitez l'améliorer. Plusieurs personnes sur les réseaux sociaux et discord ont validé le bon fonctionnement, mais on n'est pas à l'abri d'un bug.
Si vous êtes sous d'autres distributions Linux sachez qu'il existe d'autres scripts d'installation.
7 commentaires
Ya un Docker-compose officiel sinon pour pas se prendre la tête.
https://github.com/linuxserver/docker-bookstack
@Nico: bien vu merci, comme ça tout le monde est servi, les adeptes des conteneurs et les autres 🙂
Please update your script.
Current version require PHP 8.2 so I need to change remi repositorium to 8.2 and install 82 (not 81) variants of php packages. I also got problems when I omit php-zip so I added this to script.
Powertools no longer works, I don't them needed anyway, works just fine without.
Anyway I got working installation on OL 8.10, thanks for starting point.
@Tomasz Szczypel: Hello Tomasz, thank you for your report. I upgraded the script to PHP8.3 and fix the phpzip symlink issue. Please check the RHEL8 version :
https://github.com/blogmotion/bm-bookstack-install/
I tested new script on OR 9.5
- only one line to change:
REMIRPM="https://rpms.remirepo.net/enterprise/remi-release-9.rpm"
Noticed problems:
1. APP_LANG=fr in /var/www/BookStack/.env even when
echo $(locale | grep LANG | cut -d= -f2 | cut -d_ -f1)
return "en". I just corrected value in .env.
I checked your script, -eq is for numbers not string so
if [[ $lang -eq "fr" ]]; then
should be
if [[ $lang == "fr" ]]; then
Please check that with French installation.
2. IP determination behave weirdly when more than one interface and/or IPv6 is enabled but not in use. We are getting mangled IPv6 address with eth0 concatenated in. Issue come from $(hostname -i). $(hostname -I) works a bit better. Maybe just asking user for IP will work better? You can propose detected addresses as starting point. That problem also happens with OL 8.10.
@Tomasz Szczypel: Hi Tomasz ! Thank you again for your report!
I fix the issues, please find 2 version : RHEL8 and RHEL9 :
https://github.com/blogmotion/bm-bookstack-install/
Please let me know if it works better 🙂
I just check new version on OL 9.5. So far everything works just fine. Thanks for incorporation of my fixes.