容器化部署LDAP
容器化部署LDAP和PHP-LDAP-Admin可以帮助你在Docker环境中快速搭建和管理LDAP服务。
1. 部署OpenLDAP容器
password='123456'
docker run \
-d -p 389:389 -p 636:636 \
--name openldap \
--restart=always \
--hostname openldap \
-v /data/docker_tmp/openldap/slapd/database:/var/lib/ldap \
-v /data/docker_tmp/openldap/slapd/config:/etc/ldap/slapd.d \
--env LDAP_ORGANISATION="ev5.top" \
--env LDAP_DOMAIN="ev5.top" \
--env LDAP_BASE_DN="dc=ev5,dc=top" \
--env LDAP_ADMIN_PASSWORD=$password \
registry.cn-beijing.aliyuncs.com/zygpubilc/openldap:2.4.57
解释:
-p 389:389:映射容器的389端口,提供LDAP的非加密访问。-p 636:636:映射容器的636端口,提供SSL加密的LDAP访问。--name openldap:容器名称设置为openldap。--restart=always:容器会在异常退出或主机重启后自动重启。--hostname openldap:设置容器内部的主机名称为openldap。-v /data/docker_tmp/openldap/slapd/database:/var/lib/ldap:将LDAP数据持久化存储到本地主机的指定目录,确保容器重启或更新时数据不会丢失。-v /data/docker_tmp/openldap/slapd/config:/etc/ldap/slapd.d:将LDAP配置文件持久化到本地,方便管理和备份配置。--env LDAP_ORGANISATION="ev5.top":指定LDAP的组织名称,通常是公司的名称。--env LDAP_DOMAIN="ev5.top":配置LDAP域名,作为LDAP目录树的顶端。--env LDAP_BASE_DN="dc=ev5,dc=top":配置LDAP的基础DN,定义LDAP的目录结构根。--env LDAP_ADMIN_PASSWORD=$password:设置管理员密码,密码可以通过环境变量传递,保持灵活性。
2. 部署PHP-LDAP-Admin容器
docker run \
-p 8082:80 \
--name ldapadmin \
--link openldap:ldap \
--env PHPLDAPADMIN_LDAP_HOSTS=ldap \
--env PHPLDAPADMIN_HTTPS=false \
--detach registry.cn-beijing.aliyuncs.com/zygpubilc/phpldapadmin:0.8.0
解释:
-p 8082:80:映射容器的80端口到主机的8082端口,通过浏览器访问http://<主机IP>:8082管理LDAP。--name ldapadmin:将容器命名为ldapadmin。--link openldap:ldap:通过Docker的--link参数,将ldapadmin容器连接到openldap容器,使得ldapadmin可以通过ldap名称访问LDAP服务。--env PHPLDAPADMIN_LDAP_HOSTS=ldap:设置phpLDAPadmin连接的LDAP服务器主机名为ldap,即上面openldap容器。--env PHPLDAPADMIN_HTTPS=false:禁用HTTPS,方便测试环境下的使用。--detach:后台运行容器。
访问与管理
- 启动完容器后,可以通过LDAP客户端或
phpLDAPadmin管理界面对LDAP进行管理。 - 打开浏览器,访问
http://<主机IP>:8082,进入phpLDAPadmin界面,使用cn=admin,dc=ev5,dc=top和管理员密码登录管理LDAP。
本文来自博客园,作者:&UnstopPable,转载请注明原文链接:https://www.cnblogs.com/Unstoppable9527/p/18416458

浙公网安备 33010602011771号