项目
博客
归档
资源链接
关于我
项目
博客
归档
资源链接
关于我
Docker部署Jenkins、LDAP和LdapAdmin及配置使用
2025-05-12
·
·
原创
·
·
本文共 493个字,预计阅读需要 2分钟。
## Docker部署Jenkins、LDAP和LdapAdmin及配置使用 ### docker部署Jenkins 部署脚本jenkins.sh,在首次登录的密码获取地址:`more /data/jenkins/secrets/initialAdminPassword ` ```shell docker run --name jenkins -itd \ -p 80:8080 \ -p 50000:50000 \ -v /data/jenkins:/var/jenkins_home \ -v /var/run/docker.sock:/var/run/docker.sock \ -v /bin/docker:/usr/bin/docker \ -v /etc/localtime:/etc/localtime:ro \ -e JAVA_OPTS="-Dsun.jnu.encoding=UTF-8 -Dfile.encoding=UTF-8 -Duser.timezone=Asia/Shanghai" \ --restart=always \ --user=root \ --privileged=true \ jenkins/jenkins:lts ``` ### docker部署LDAP、LdapAdmin 先需要拉取镜像 `docker pull osixia/openldap` `docker pull osixia/phpldapadmin` 再启动脚本: ```shell # LDAP 脚本 docker run \ -p 389:389 \ -p 636:636 \ --name myldap_name \ --network bridge \ --env LDAP_ORGANISATION="myldap" \ --env LDAP_DOMAIN="myldap.com" \ --env LDAP_ADMIN_USER="cn=admin" --env LDAP_ADMIN_PASSWORD="123456" \ --detach osixia/openldap # LdapAdmin脚本 docker run \ -d \ --privileged \ -p 8989:80 \ --name myldapadmin \ --env PHPLDAPADMIN_HTTPS=false \ --env PHPLDAPADMIN_LDAP_HOSTS=192.168.60.123 \ --detach osixia/phpldapadmin ``` > 参数说明: > > * `LDAP_ORGANISATION` :设置组织名称。 > * `LDAP_DOMAIN` :设置 LDAP 域名。 > * `LDAP_ADMIN_USER` :设置 管理员用户名,默认值就是`cn=admin`。 > * `LDAP_ADMIN_PASSWORD` :设置管理员密码。 > * `-p 389:389`:将容器的 389 端口映射到主机的 389 端口,用于 LDAP 客户端的连接。 > * `-p 636:636`:将容器的 636 端口映射到主机的 636 端口,用于 LDAPS 客户端的连接(加密)。 > * `PHPLDAPADMIN_LDAP_HOSTS`:设置连接的 LDAP 服务器地址为主机的 localhost。如果 openldap 容器和 phpldapadmin 容器不在同一个 Docker 网络中,需要设置为 openldap 容器的实际 IP 地址或主机名。 #### 使用方法 - **访问 phpldapadmin** :在浏览器中输入http://192.168.60.123:80(假设主机的 IP 地址为`localhost`,端口为`80`),即可访问 phpldapadmin 的 Web 界面。 - **登录** :在登录页面中,输入`cn=admin,dc=myldap,dc=com`作为登录 DN,输入管理员密码进行登录。 - **管理 LDAP 数据** :登录后,可以使用 phpldapadmin 的图形化界面进行 LDAP 数据的管理,如创建、修改、删除用户、组、组织等。 ### 下载admin桌面应用连接&配置用户 下载地址: https://sourceforge.net/projects/ldapadmin/ 建立新连接: - Connection name: 自定义连接名称 - Host:LADP服务地址,例如:`192.168.60.123` - Base: 管理员用户名,例如:`dc=myldap,dc=com` - Account.Username: 用户名,例如: `cn=admin,dc=myldap,dc=com` - Account.Password: 密码,`123456` 然后右键新建组织:New -> Create Organization Unit: - Name: 分组名称,例如:group - Description: 分组描述, 同样增加一个用户分组: Name:user 在用户分组中添加一个用户: New -> Create User: Account: - First name: - Second name: - Username: 用户名称, test - Login shell: 登录脚本,无登录:/sbin/nologin - Home Diretory: home地址:/home/test Business: - E-Mail Addresses: 添加邮箱地址 然后右键给该用户设置密码 ### Jenkins配置LDAP 登录Jenkins后,点击Manage Jenkins -> Security -> 安全域:LDAP - **服务器Server** : `ldap://192.168.60.123:389` - Advanced Server Configuration: - User search base: `ou=user,dc=myldap,dc=com` - Group search base: `ou=group,dc=myldap,dc=com` - Manager DN: `cn=admin,dc=myldap,dc=com` - Manager Passwor: `123456` - Email Address LDAP attribute: `mail` 测试配置是否能接通:Test LDAP settings 使用test的用户验证: User: test ,Password: xx 测试成功会展示: ```shell Authentication: successful User ID: test User DN: uid=test,ou=user,dc=myldap,dc=com ``` 此时该账户密码也可以在Jenkins中登录 在LADPAdmin中新添加的用户都可以登录Jenkins。 > 参考: > > 1. Docker安装部署OpenLDAP:https://note.guoxiaorui.cn/pages/8d2ed7 > 2. Centos7 搭建openldap+图形界面:https://www.cnblogs.com/panwenbin-logs/p/16101045.html > 3. OpenLDAP管理工具之LDAP Admin: https://cloud.tencent.com/developer/article/1380076