Huge role refactoring/cleanup. Other commits will propably follow. Because some bugs will exist. Still important for longrun and also for auto docs/help/slideshow generation

This commit is contained in:
2025-07-08 23:43:13 +02:00
parent 6b87a049d4
commit 563d5fd528
1242 changed files with 2301 additions and 1355 deletions

View File

@@ -0,0 +1,28 @@
# phpldapadmin
## Description
phpLDAPadmin is a webbased LDAP client that provides an intuitive interface for managing LDAP directories. This containerized deployment leverages Docker Compose and Ansible automation to offer a secure, configurable environment for administering and exploring your LDAP configurations.
## Overview
This deployment simplifies LDAP management by presenting a modern web interface that lets you search, modify, and manage directory entries easily. It supports integration with external LDAP servers and works seamlessly behind a reverse proxy, allowing administrators to focus on core directory tasks rather than deployment intricacies.
## Features
- **WebBased LDAP Management:**
Enjoy an intuitive and responsive interface to browse and administer your LDAP directories.
- **Secure Reverse Proxy Setup:**
Easily configure your access through a reverse proxy to ensure secure, controlled entry to your LDAP management tool.
- **Docker Compose Integration:**
Benefit from a streamlined, containerized deployment process that simplifies updates and environment configuration.
- **Flexible Environment Configuration:**
Customize your installation using environment variables and templated configuration files to match your infrastructure needs.
## Other Resources
- [phpLDAPadmin Docker Container Documentation](https://github.com/leenooks/phpLDAPadmin/wiki/Docker-Container)
- [Official phpldapadmin Homepage](https://github.com/leenooks/phpLDAPadmin)

View File

@@ -0,0 +1,2 @@
# Todo
- Change the version from dev to a stable or productive version

View File

@@ -0,0 +1,29 @@
---
galaxy_info:
author: "Kevin Veen-Birkenbach"
description: "Take control of your LDAP directory with phpldapadmin — a webbased LDAP client offering an intuitive interface to manage your LDAP directories. This containerized deployment simplifies administration and provides secure, flexible configuration options."
license: "CyMaIS NonCommercial License (CNCL)"
license_url: "https://s.veen.world/cncl"
company: |
Kevin Veen-Birkenbach
Consulting & Coaching Solutions
https://www.veen.world
min_ansible_version: "2.9"
platforms:
- name: Archlinux
versions:
- rolling
galaxy_tags:
- phpldapadmin
- docker
- ldap
- webui
repository: "https://s.veen.world/cymais"
issue_tracker_url: "https://s.veen.world/cymaisissues"
documentation: "https://s.veen.world/cymais"
logo:
class: "fa-solid fa-user-lock"
run_after:
- service-openldap
- web-app-matomo
- web-app-keycloak

View File

@@ -0,0 +1 @@
credentials:

View File

@@ -0,0 +1,10 @@
- name: "include docker-compose role"
include_role:
name: docker-compose
- name: "include role webserver-proxy-domain for {{application_id}}"
include_role:
name: webserver-proxy-domain
vars:
domain: "{{ domains | get_domain(application_id) }}"
http_port: "{{ ports.localhost.http[application_id] }}"

View File

@@ -0,0 +1,15 @@
{% include 'roles/docker-compose/templates/base.yml.j2' %}
application:
container_name: {{ application_id }}
image: leenooks/phpldapadmin:{{applications[application_id].version}}
ports:
- 127.0.0.1:{{ports.localhost.http[application_id]}}:8080
{% include 'roles/docker-container/templates/base.yml.j2' %}
{% include 'roles/docker-container/templates/networks.yml.j2' %}
{% include 'roles/docker-compose/templates/volumes.yml.j2' %}
data:
{% include 'roles/docker-compose/templates/networks.yml.j2' %}

View File

@@ -0,0 +1,3 @@
# @See https://github.com/leenooks/phpLDAPadmin/wiki/Docker-Container
APP_URL= {{ domains | get_url(application_id, web_protocol) }}
LDAP_HOST= {{ldap.server.domain}}

View File

@@ -0,0 +1,10 @@
version: "2.0.0-dev"
oauth2_proxy:
application: application # Needs to be the same as webinterface
port: 8080 # application port
features:
matomo: true
css: true
portfolio_iframe: true
ldap: true
oauth2: true

View File

@@ -0,0 +1 @@
application_id: "phpldapadmin"