Commit 5505742c authored by nimrod's avatar nimrod
Browse files

Replaced phpLDAPadmin with ldap-account-manager.

- Replaced phpLDAPadmin with ldap-account-manager as the webui.
- Added nss-pam-ldapd as a test client.
parent f87f1b7e
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
# LDAP Docker

> A dockerized OpenLDAP with phpLDAPadmin webui.
> A dockerized OpenLDAP with LDAP Account Manager.

## Requirements

+15 −5
Original line number Diff line number Diff line
@@ -11,18 +11,28 @@ services:
            LDAP_ROOTPASS: foo
            LDAP_DOMAIN: nowhere.com
            LDAP_ORGANIZATION: none
    phpldapadmin:

    nss-pam-ldapd:
        build:
            context: phpldapadmin/
            context: nss-pam-ldapd/
        command: /usr/sbin/nslcd --debug --nofork
        environment:
            LDAP_BASE_DN: 'dc=nowhere,dc=com'
        volumes:
            - _run_ldap:/run/slapd

    ldap-account-manager:
        build:
            context: ldap-account-manager/
        links:
            - slapd
        volumes:
            - _run_ldap:/run/slapd
        environment:
            PLA_BASE_DN: 'dc=nowhere,dc=com'
            PLA_BIND_ID: 'cn=admin,dc=nowhere,dc=com'
            - ldap-account-manager:/var/lib/ldap-account-manager
        ports:
            - 80:80

volumes:
    _run_ldap:
    ldap:
    ldap-account-manager:
+27 −0
Original line number Diff line number Diff line
FROM debian:buster-slim
RUN apt-get update && \
    DEBIAN_FRONTEND=noninteractive apt-get install -y --no-install-recommends \
        ldap-account-manager\
        wget \
    && \
    ln -sf /dev/stdout /var/log/apache2/access.log && \
    ln -sf /dev/stderr /var/log/apache2/error.log && \
    ln -sf /dev/stdout /var/log/apache2/lam.log && \
    mv /etc/ldap-account-manager/config.cfg /var/lib/ldap-account-manager/config/config.cfg && \
    ln -sf /var/lib/ldap-account-manager/config/config.cfg /etc/ldap-account-manager/config.cfg && \
    mv /var/lib/ldap-account-manager /var/lib/ldap-account-manager.orig && \
    mkdir -m 755 /var/lib/ldap-account-manager && \
    sed -i 's@SYSLOG@/var/log/apache2/lam.log@' /var/lib/ldap-account-manager.orig/config/config.cfg && \
    sed -i '/<\/VirtualHost>/i RedirectMatch permanent "^/$" "/lam"' /etc/apache2/sites-enabled/000-default.conf && \
    rm -rf /tmp/* /var/tmp/* /var/lib/apt/lists/* /var/cache/apt/archives/*
COPY --chown=root:root entrypoint /entrypoint
ENV APACHE_RUN_DIR=/run/apache2 \
    APACHE_LOG_DIR=/var/log/apache2 \
    APACHE_RUN_USER=www-data \
    APACHE_RUN_GROUP=www-data \
    APACHE_PID_FILE=/run/apache2/apache2.pid
EXPOSE 80
VOLUME /var/lib/ldap-account-manager
ENTRYPOINT [ "/entrypoint" ]
CMD [ "apache2", "-DFOREGROUND" ]
HEALTHCHECK CMD wget --spider --quiet http://localhost/lam || exit 1
+10 −0
Original line number Diff line number Diff line
# LDAP Account Manager

> Dockerized LDAP Account Manager.

## Usage

The image isn't configured with environment variables, instead it uses a volume
for `/var/lib/ldap-account-manager` that contains the application's
configuration files. On first run the default files are copied to the volume and
the configuration is done through the application itself.
Loading