
https://github.com/osixia/docker-openldap
docker pull osixia/openldap
docker pull osixia/phpldapadmin
docker run \
    -d \
    -p 389:389 \
    -p 636:636 \
    -v /usr/local/ldap:/usr/local/ldap \
    -v /data/openldap/ldap:/var/lib/ldap \
    -v /data/openldap/slapd.d:/etc/ldap/slapd.d \
    --env LDAP_ORGANISATION="limikeji" \
    --env LDAP_DOMAIN="limikeji.com" \
    --env LDAP_ADMIN_PASSWORD="qwe*123456" \
    --name openldap \
    --hostname openldap-host\
    --network bridge \
    osixia/openldap:1.4.0
-v /data/openldap/ldap:/var/lib/ldap:将数据持久化到本地
其中 -p 389:389 \ TCP/IP 访问端口,-p 636:636 \ SSL 连接端口。
–name your_ldap 自行设置容器名称
–network bridge 连接默认的 bridge 网络(docker0)
–hostname openldap-host 设置容器主机名称为 openldap-host
–env LDAP_ORGANISATION=“company” 配置 LDAP 组织名称
–env LDAP_DOMAIN=“company.com” 配置 LDAP 域名
–env LDAP_ADMIN_PASSWORD=“123456” 配置 LDAP 密码
默认登录用户名:admin


docker run \
-p 8080:80 \
--privileged \
--name limildap \
--env PHPLDAPADMIN_HTTPS=false \
--env PHPLDAPADMIN_LDAP_HOSTS=172.17.148.238 \
--detach osixia/phpldapadmin
-d 分离模式启动容器
–privileged 特权模式启动(使用该参数,container 内的 root 拥有真正的 root 权限。
否则,container 内的 root 只是外部的一个普通用户权限。)
–env PHPLDAPADMIN_HTTPS=false 禁用 HTTPS
–env PHPLDAPADMIN_LDAP_HOSTS =172.17.148.238 配置 openLDAP 的 IP 或者域名,我的 openLDAP 是在服务器 172.17.148.238 启动。
此处设置访问端口为 8080,可自行更改访问端口号

至此 openldap 使用 docker 安装完成
$ docker exec -it openldap slapd -V
@(#) $OpenLDAP: slapd 2.4.50+dfsg-1~bpo10+1 (May  4 2020 05:25:06) $
	Debian OpenLDAP Maintainers <pkg-openldap-devel@lists.alioth.debian.org>
查看状态:
$ docker ps -a
CONTAINER ID        IMAGE                   COMMAND                  CREATED             STATUS              PORTS                                        NAMES
b0a3b2be8c6e        osixia/openldap:1.4.0   "/container/tool/run"    37 minutes ago      Up 37 minutes       0.0.0.0:389->389/tcp, 0.0.0.0:636->636/tcp   openldap
e7615fbde6e2        osixia/phpldapadmin     "/container/tool/run"    18 hours ago        Up 18 hours         443/tcp, 0.0.0.0:8080->80/tcp                limildap                                                 lute-http
其他操作:
docker exec -it openldap ldapadd -x -D "cn=admin,dc=limikeji,dc=com" -w'qwe*123456' -f /usr/local/ldap/cuijianzhe.ldif  #添加人员
docker cp  cuijianzhe.ldif  ldap:/etc/