Files
container-openldap/Dockerfile
T
Bertrand GounyandClaude Opus 5.5 52230d6cd7 feat: update to osixia/baseimage 2.0.0 and add integration tests
- Update the base image to osixia/baseimage:alpine-2.0.0 and build the
  CI/CD tool with osixia/dagger-build (Go 1.26.9).
- Add Dagger integration tests: default bootstrap, alternative schemas,
  all compatible modules and schemas with every bootstrap feature on a
  3-node replicated cluster with TLS required, backup/restore, simulated
  upgrade and upgrade from previous releases.
- Fix bootstrap failing with "Argument list too long" with large schemas:
  load them with LDIF include: lines, fail on missing schemas.
- Default OPENLDAP_BOOTSTRAP_PPOLICY_DEFAULT_CHECK_QUALITY to 1 so
  pwdMinLength is enforced.
- Align the CI workflow with osixia/container-baseimage and add Dependabot.
- Document available schemas and modules and their incompatibilities.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-16 20:37:20 +02:00

38 lines
1.0 KiB
Docker

ARG BASE_IMAGE="osixia/baseimage:alpine-2.0.0"
FROM ${BASE_IMAGE}
ARG IMAGE="osixia/openldap:develop"
ENV CONTAINER_IMAGE=${IMAGE}
# Add OpenLDAP group and user
ARG OPENLDAP_GROUP_GID=911
ARG OPENLDAP_USER_UID=911
RUN container groups add "${OPENLDAP_GROUP_GID}" ldap \
&& container users add "${OPENLDAP_USER_UID}" ldap --group-id "${OPENLDAP_GROUP_GID}" --group-name ldap
# Set OpenLDAP version
ARG OPENLDAP_VERSION=2.6.15-r0
ENV OPENLDAP_VERSION="${OPENLDAP_VERSION}"
# Install all OpenLDAP packages
RUN container packages install --update --clean \
openldap-backend-all="${OPENLDAP_VERSION}" \
openldap-clients="${OPENLDAP_VERSION}" \
openldap-overlay-all="${OPENLDAP_VERSION}" \
openldap-passwd-argon2="${OPENLDAP_VERSION}" \
openldap-passwd-pbkdf2="${OPENLDAP_VERSION}" \
openldap-passwd-sha2="${OPENLDAP_VERSION}" \
openldap="${OPENLDAP_VERSION}"
COPY services /container/services
RUN container services install \
&& container services link
COPY environment /container/environment
USER ldap
EXPOSE 3890 6360