- Smarty 41.3%
- Shell 30.1%
- Dockerfile 28.6%
|
|
||
|---|---|---|
| config | ||
| scripts | ||
| .pre-commit-config.yaml | ||
| docker-compose.yaml | ||
| Dockerfile | ||
| README.md | ||
docker-bookstack
Aperçu
Ce dépôt contient la déclaration d'un container Docker nécessaire pour faire tourner le gestionnaire de documentation BookStack 1. Le serveur web utilisé pour exécuter BookStack est Nginx 2, qui utilise PHP-FPM 3 pour exécuter le code PHP de BookStack.
BookStack demande une base compatible MySQL, PostgreSQL n'est pas supporté.
L'intégration OIDC est configurée dans le cluster. Il est possible d'assigner des utilisateurs à des rôles
BookStack en retournant le nom de ces rôles en minuscules dans le claim groups du scope groups.
Variable d'environnement
Général
-
APP_URL (défaut:
http://localhost) : URL racine où est accessible BookStack. -
APP_DEBUG (défaut:
false) : Afficher les erreurs dans le navigateur. Valeurs :true/false. NE PAS ACTIVER EN PRODUCTION. -
APP_KEY (aucun défaut, requis): La clé à utiliser pour crypter les données sensibles (sessions, cookies...). Clé de 32 octets encodés en base64 (ex: RT1ZkQFh3MvWw/2jFlNGFuFcRcS7mgOuMaBIB0vxOSw=).
Base de données
-
DB_HOST (défaut:
localhost:3306): Addresse et port du serveur de base de données. -
DB_DATABASE (défaut:
bookstack): Nom de la base de données à utiliser pour stocker les données de bookstack. -
DB_USER (défaut: bookstack): Nom d'utilisateur pour se connecter à la base de données.
-
DB_PASSWORD: (aucun défaut, requis): Mot de passe pour se connecter à la base de données.
Envoi de mails
-
MAIL_HOST (défaut: localhost) : Addresse du serveur SMTP à utiliser pour envoyer les mails.
-
MAIL_PORT (défaut: 25) : Port du serveur SMTP.
-
MAIL_FROM (défaut: noreply@localhost) : Addresse dans l'en-tête "From" des mails envoyés par BookStack.
-
MAIL_FROM_NAME (défaut: BookStack) : Nom dans l'en-tête "From" des mails envoyés par BookStack.
OpenID Connect
-
OIDC_ISSUER (aucun défaut, requis): L'URL du fournisseur d'identité OIDC. Doit nécessairement commencer par https://.
-
OIDC_CLIENT_ID (aucun défaut, requis): Identifiant client à utiliser pour accéder au fournisseur d'identité OIDC.
-
OIDC_CLIENT_SECRET (aucun défaut, requis) : Secret client à utiliser pour accéder au fournisseur d'identité OIDC.
-
OIDC_DISPLAY_NAME_CLAIMS (défaut: given_name): Claim (attribut) OIDC à utiliser comme nom des utilisataires dans l'interface. Plusieurs attribut peuvent être spécifiés, séparé par
|, dans ce cas ils seront concaténés en insérant un espace entre les deux. -
ROLE_MAPPINGS (défaut: vide): Liste des correspondances entre groupes OIDC et rôles BookStack, sous la forme
oidc_group_1:bookstack_role1;oidc_group_2:bookstack_role_2. Au démarrage, après les migrations, le container met à jour l'attribut "External ID" (roles.external_auth_id) de chaque rôle BookStack indiqué avec le groupe OIDC correspondant. Le rôle peut être désigné par son nom affiché ou sonsystem_name.
Persistence
Les dossiers /srv/bookstack/public/uploads et /srv/bookstack/storage doivent survivre au redémarrage du
container pour que les données soient conservées.
Développement
Le fichier docker-compose permet de lancer BookStack sur une machine locale. Une base de donnée MariaDB est automatiquement crée. Pour démarrer bookstack sur votre machine, installez docker et docker compose, et lancez :
docker-compose up --build
L'instance de bookstack sera disponible à http://localhost:9400. Une instance de mailtacher est sera également accessible à l'addresse http://localhost:9401 pour consulter les mails envoyés par BookStack.