使用docker部署OpenLDAP并使gitlab接入

操作说明:

该文章是演示如何使用docker搭建OpenLDAP和gitlab,并配置Gitlab接入OpenLdap

环境说明:

OpenLDAP:192.168.10.101

Gitlab:192.168.10.102

这两个操作系统安装了docker

(看不清图可以右击复制图片地址,粘贴到浏览器查看)

具体步骤:

一、使用docker部署openldap

1.拉取openldap和phpLdapAdmin的docker镜像

[root@zhuhao-devops-1 openldap]# docker pull osixia/openldap

[root@zhuhao-devops-1 openldap]# docker pull osixia/phpldapadmin

[root@zhuhao-devops-1 openldap]# docker images
REPOSITORY            TAG                 IMAGE ID            CREATED             SIZE
nginx-web             latest              b36b13e34f9e        25 hours ago        133MB
<none>                <none>              4e44296068d3        25 hours ago        133MB
nginx                 latest              7e4d58f0e5f3        2 weeks ago         133MB
node1:5000/zh_nginx   latest              7e4d58f0e5f3        2 weeks ago         133MB
registry              2                   2d4f4b5309b1        3 months ago        26.2MB
osixia/openldap       latest              e55926b7c377        3 months ago        262MB
osixia/phpldapadmin   latest              e340e61b03c4        10 months ago       302MB

2.启动openldap和phpLdapAdmin的docker容器

#启动openLDAP容器
docker run -p 389:389 -p 636:636 --name youe_ldap --network bridge --hostname openldap-host --env LDAP_ORGANISATION="tq" --env LDAP_DOMAIN="tq.com" --env LDAP_ADMIN_PASSWORD="tq123456" --detach osixia/openldap

#启动phpLdapAdmin
docker run -d --privileged -p 18004:80 --name youe_pla --env PHPLDAPADMIN_HTTPS=false --env PHPLDAPADMIN_LDAP_HOSTS=192.168.10.101 --detach osixia/phpldapadmin

启动完成后查看容器运行情况,有没有正常UP,如果是一只Restart用docker logs -f 容器名 查看具体问题

[root@zhuhao-devops-1 openldap]# docker ps -a
CONTAINER ID        IMAGE                 COMMAND                  CREATED             STATUS              PORTS                                        NAMES
1251d19ea411        osixia/phpldapadmin   "/container/tool/run"    38 minutes ago      Up 38 minutes       443/tcp, 0.0.0.0:18004->80/tcp               youe_pla
a099d01ce3e9        osixia/openldap       "/container/tool/run"    56 minutes ago      Up About an hour    0.0.0.0:389->389/tcp, 0.0.0.0:636->636/tcp   youe_ldap
eb60f2a99838        nginx-web             "/docker-entrypoint.…"   12 hours ago        Up 12 hours         0.0.0.0:88->80/tcp                           nginx-web
bc037adabcfb        registry:2            "/entrypoint.sh /etc…"   46 hours ago        Up 37 hours         0.0.0.0:5000->5000/tcp                       keen_meninsky

二、访问phpldapadmin页面

输入启动时配置的dc

登陆后右侧列表是没有用户和组织的,需要我们自己创建

三、创建组织和用户

1.创建组织

选择【Create new entry here】-【Generic: Organisational Unit】-【commit】

创建完成后就有了右侧的People组织

2.创建用户

点开【People】-【Create new entry here】-【Kolab: User Entry】-【create object】-【commit】

添加用户名属性

查看创建好的用户zhu’hao2

三、使用docker部署gitlab

创建文件夹用来挂载数据

mkdir /usr/local/gitlab/{config,data,logs}

1.拉取镜像

docker pull gitlab/gitlab-ce

2.启动容器

docker run -d --hostname 192.168.10.102 --name gitlab-ce     --restart always    --publish 30022:22 --publish 30080:80 --publish 30443:443     --volume /usr/local/gitlab/data:/var/opt/gitlab     --volume /usr/local/gitlab/logs:/var/log/gitlab     --volume /usr/local/gitlab/config:/etc/gitlab     gitlab/gitlab-ce

启动完成后可以查看docker 容器运行情况

[root@zhuhao-devops-2 gitlab]# docker ps -a
CONTAINER ID        IMAGE               COMMAND             CREATED             STATUS                       PORTS                                                                  NAMES
83a5b06ffe9d        gitlab/gitlab-ce    "/assets/wrapper"   About an hour ago   Up About an hour (healthy)   0.0.0.0:30022->22/tcp, 0.0.0.0:30080->80/tcp, 0.0.0.0:30443->443/tcp   gitlab-ce

四、配置gitlab连接openldap

1.编辑配置文件

vim /usr/local/gitlab/config/gitlab.rb

添加配置文件到gitlab.rb,如下图

gitlab_rails['ldap_enabled'] = true
gitlab_rails['ldap_servers'] = YAML.load <<-'EOS'
  main: # 'main' is the GitLab 'provider ID' of this LDAP server
    label: 'LDAP'
    host: '192.168.10.101'
    port: 389
    uid: 'cn'
    method: 'plain' # "tls" or "ssl" or "plain"
    bind_dn: 'cn=admin,dc=tq,dc=com'
    password: 'tq123456'
    allow_username_or_email_login: false
    base: 'ou=People,dc=tq,dc=com'
    attributes:
      username: ['uid']
      email:    ['mail']
      first_name: 'sn'



EOS

2.进入容器重启gitlab

[root@zhuhao-devops-2 config]# docker exec -it gitlab-ce bash

root@192:/# gitlab-ctl reconfigure

重启完成后,访问gitlab登陆页面:http://192.168.10.102:30080

可以看到已经出现了LDAP登陆选项

输入用户名密码后,即可登陆

到此已经部署完成

附上LDAP Admin 连接OpenLDAP方法:

访问LDAP Admin官网下载系统对应的程序:

http://www.ldapadmin.org/download/ldapadmin.html

下载后运行程序:

点解右上角【Connect】-【New connection】

双击ldap图标,连接openldap服务器

1.创建ou

右击dc=tq,dc=com[192.168.10.101]

2.创建用户

创建完成后即可用此账号登陆集成的gitlab

最后附上Jenkins连接openldap配置图:

参考文档:

https://blog.csdn.net/monkeyblog/article/details/94021802

暂无评论

发送评论 编辑评论


				
|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!
上一篇
下一篇