mirror of
https://github.com/docker-mailserver/docker-mailserver.git
synced 2025-08-04 18:15:29 +02:00
tests: Change OpenLDAP image to bitnami/openldap
(#3494)
**TL;DR:** - New image is actively maintained vs existing one that is over 5 years old. - Slight improvement to LDAP tree config via `.ldif` files. - No more `Dockerfile` required to build, we can just rely on `docker run`. `osixia/openldap` has not seen any activity since Feb 2021, while our `Dockerfile` was fixed to v1.1.6` (Feb 2018). Startup time for this new image is around 5 seconds? (_The LDAP test uses a standard 20 second timeout check to wait until the server is ready before continuing with starting the DMS image_). This commit migrates to `bitnami/openldap` which required modifying the `01_mail-tree.ldif` to also include adding the root object to start successfully. This image is actively maintained and one of the most popular OpenLDAP images on DockerHub. The user account `.ldif` files have minimal changes: - Lines moved around for better organization - Additional comments for context - Removal of inherited `objectClass` attributes (`person`, `top`) from the `orgnizationalPerson` class. Attribute `sn` changed to long form `surname` and values corrected with `givenName`. `changetype: add` was also not necessary. Additionally the image does not support the `.schema` format, they must be converted to `.ldif` which has been done for `postfix-book.schema`. See PR for more details.
This commit is contained in:
parent
cf9eb8278a
commit
39ae101266
8 changed files with 69 additions and 128 deletions
|
@ -19,15 +19,18 @@ function setup_file() {
|
|||
docker network create "${DMS_TEST_NETWORK}"
|
||||
|
||||
# Setup local openldap service:
|
||||
# NOTE: Building via Dockerfile is required? Image won't accept read-only if it needs to adjust permissions for bootstrap files.
|
||||
# TODO: Upstream image is no longer maintained, may want to migrate?
|
||||
docker build -t dms-openldap test/config/ldap/docker-openldap/
|
||||
|
||||
docker run -d --name "${CONTAINER2_NAME}" \
|
||||
--env LDAP_DOMAIN="${FQDN_LOCALHOST_A}" \
|
||||
docker run --rm -d --name "${CONTAINER2_NAME}" \
|
||||
--env LDAP_ADMIN_PASSWORD=admin \
|
||||
--env LDAP_ROOT='dc=localhost,dc=localdomain' \
|
||||
--env LDAP_PORT_NUMBER=389 \
|
||||
--env LDAP_SKIP_DEFAULT_TREE=yes \
|
||||
--volume './test/config/ldap/docker-openldap/bootstrap/ldif/:/ldifs/:ro' \
|
||||
--volume './test/config/ldap/docker-openldap/bootstrap/schemas/:/schemas/:ro' \
|
||||
--hostname "${FQDN_LDAP}" \
|
||||
--network "${DMS_TEST_NETWORK}" \
|
||||
dms-openldap
|
||||
bitnami/openldap:latest
|
||||
|
||||
_run_until_success_or_timeout 20 sh -c "docker logs ${CONTAINER2_NAME} 2>&1 | grep 'LDAP setup finished'"
|
||||
|
||||
#
|
||||
# Setup DMS container
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue