Containeurisation du fournisseur d'identité LemonLDAP-NG.
  • Go Template 43.2%
  • Shell 23%
  • Smarty 20.9%
  • Dockerfile 12.9%
Find a file
2026-08-19 11:58:40 +02:00
config feat: use redis to store local and persistent sessions 2026-07-17 19:09:19 +02:00
scripts style: make code compliant with shared commit hooks 2026-07-17 19:36:38 +02:00
tests feat: add docker-compose.yaml 2026-06-25 17:15:20 +02:00
.pre-commit-config.yaml style: make code compliant with shared commit hooks 2026-07-17 19:36:38 +02:00
docker-compose.yaml style: make code compliant with shared commit hooks 2026-07-17 19:36:38 +02:00
Dockerfile feat: bump lemonldap-ng version 2026-08-19 11:58:40 +02:00
README.md style: make code compliant with shared commit hooks 2026-07-17 19:36:38 +02:00

docker-lemonldap-ng

Aperçu

Ce dépôt contient la déclaration d'un container Docker qui exécute le fournisseur d'identité LemonLDAP-NG1.

LemonLDAP-NG permet aux service supportant OpenID Connect ou SAML de lui déléguer l'authentification des utilisateurs. Celle-ci est fait en vérifiant l'identité et le mot de passe fournit dans une base LDAP.

Variables d'environnement

Les variables d'environnement suivantes doivent être définies dans le container pour configurer l'instance de LemonLDAP-NG (les variables sans valeurs par défaut sont requises) :

Général

  • DOMAIN : Le domain à utiliser, pour les cookies par exemple. TODO: Le déduire de https+HOSTNAME+port.

  • HOSTNAME : Le nom d'hôte où est exposé lemonldap-ng.

  • PORTAL_URL : L'url racine où sera accessible le portail de LemonLDAP-NG.

  • REDIRECTION_ENABLE_HTTPS (défaut: 1): Active le HTTPS dans les urls de redirection depuis le portail.

  • REDIRECTION_PORT (défaut: 443): Port des URLs de redirections depuis le portail.

  • ENCRYPTION_KEY : Clé de chiffrement à utiliser (pour les sessions par exemple).

  • LOG_LEVEL (defaut: info): Niveau de journalisation (error / warn / notice / info / debug).

LDAP

  • LDAP_SERVER : Addresse du serveur LDAP à contacter pour valider les identifiants des utilisateurices.

  • LDAP_MANAGER : DN (distinguished name) d'administration de la base LDAP.

  • LDAP_PASSWORD : Mot de passe d'administration de la base LDAP.

  • LDAP_BASE : DN (distinguished name) de l'objet racine qui contient les utilisateurices dans la base LDAP.

  • LDAP_GROUPS_BASE : DN (distinguished name) de l'objet racine qui contient les groupes d'utilisateurices dans la base LDAP.

SMTP

  • SMTP_SERVER : Addresse du serveur SMTP où envoyer les mails (de réinitialisation de mots de passe par exemple).

  • SMTP_PORT (défaut: 25): Port du serveur SMTP où envoyer les mails.

  • MAIL_FROM (pas de défaut, requis) : Addresse de l'expéditeur des mails envoyés par LemonLDAP-NG.

Redis

Les sessions utilateuriecs sont stockées dans Redis. Pour configurer ceci :

  • REDIS_SERVER (pas de défaut, requis) : Addresse du serveur compatible Redis dans lequel stocker les sessions.

  • REDIS_PORT (pas de défaut, requis) : Port du serveur compatible Redis dans lequel stocker les sessions.

Développement

Le fichier docker-compose permet de lancer LemonLDAP-NG sur une machine locale. Un annuaire LDAP est automatiquement crée et initialiser avec les utilisateurs admin et user. Le mot de passe de chacun de ces comptes est password. Pour démarrer LemonLDAP-NG sur votre machine, installez docker et docker compose, et lancez :

docker-compose up --build

à la racine de ce dépôt.

L'instance de LemonLDAP-NG sera disponible à http://localhost:9410. Une instance de mailwacher est sera également accessible à l'addresse http://localhost:9411 pour consulter les mails envoyés par LemonLDAP-NG.