LDAP 集成gitlab jenkins 以及禅道

1.docker 安装

由于手动部署ldap时间成本太大,故本文章采用docker部署,及本文章账号集成只是可以登录,没有细节分组之类,如有需要,望诸君自行研究

1. curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun  #一键安装docker
2. systemctl start docker  #启动docker

2.LDAP 部署

docker run \
-p 389:389 \
-p 636:636 \
--name your_ldap \
--network bridge \
--hostname openldap-host \
--env LDAP_ORGANISATION="bitshare" \
--env LDAP_DOMAIN="bitshare.com" \
--env LDAP_ADMIN_PASSWORD="123456" \
--detach osixia/openldap
————————————————

其中 -p 389:389 \ TCP/IP访问端口,-p 636:636 \ SSL连接端口。
–name your_ldap 自行设置容器名称
–network bridge 连接默认的bridge网络(docker0)
–hostname openldap-host 设置容器主机名称为 openldap-host
–env LDAP_ORGANISATION=“bitshare” 配置LDAP组织名称
–env LDAP_DOMAIN=“bitshare.com” 配置LDAP域名
–env LDAP_ADMIN_PASSWORD=“123456” 配置LDAP密码
默认登录用户名:admin
————————————————

原文链接:https://blog.csdn.net/qq_41916805/article/details/107206646

使用ldapadmin进行连接ldap服务


image.png

登录LDAP进行创建用户及用户组


image.png
image.png
image.png

创建完账号记得设置密码

3.Jenkins 部署集成

本文章为方便,使用的是jenkins 的war包进行的部署,及本文将gitlab,jenkins 禅道部署在同一台机器上

git-jenkins ]# mkdir /opt/src
git-jenkins ]# cd  /opt/src

# 安装jdk
git-jenkins ]# wget http://file.zhidianjh.com:28085/jdk/jdk-8u221-linux-x64.tar.gz
git-jenkins ]# tar xf jdk-8u221-linux-x64.tar.gz -C /usr/local/
git-jenkins ]# cat >>/etc/profile<<EOFexport JAVA_HOME=/usr/local/jdk1.8.0_221
git-jenkins ]# export JRE_HOME=\${JAVA_HOME}/jre
git-jenkins ]# export CLASS_PATH=.:\${JAVA_HOME}/lib:\${JRE_HOME}/lib
git-jenkins ]# export PATH=\${JAVA_HOME}/bin:\$PATH
git-jenkins ]# EOF

# 确认jdk部署成功
[root@git-jenkins ~]# java -version 
java version "1.8.0_221"
Java(TM) SE Runtime Environment (build 1.8.0_221-b11)
Java HotSpot(TM) 64-Bit Server VM (build 25.221-b11, mixed mode)

#部署jenkins
git-jenkins ]# cd  /opt/src
git-jenkins ]# wget http://file.zhidianjh.com:28085/tomcat/apache-tomcat-8.5.47.tar.gz
git-jenkins ]# tar xf  apache-tomcat-8.5.47.tar.gz -C  /usr/local/
git-jenkins ]# cd /usr/local/
git-jenkins ]# ln -s /usr/local/apache-tomcat-8.5.47 /usr/local/tomcat
git-jenkins ]# cd /usr/local/tomcat
git-jenkins ]# cd /usr/local/tomcat/webapps/
git-jenkins ]# wget http://file.zhidianjh.com:28085/jenkins/ROOT.war
git-jenkins ]# vim /usr/local/tomcat/conf/server.xml   
                        <Connector port="8080" protocol="HTTP/1.1"   --> <Connector port="155" protocol="HTTP/1.1"  #修改端口,避免冲突
git-jenkins ]# cd /usr/local/tomcat/bin/
git-jenkins ]# sh startup.sh

# 查看tomcat是否启动成功,及端口是否存在
git-jenkins ]# ps -ef | grep tomcat 
git-jenkins ]# netstat -lntp| grep 155

访问jenkins 登录地址,IP+port 进行首次访问,初始化配置,配置Jenkins 集成ldap


image.png

image.png

保存应用,测试账号是否能登录

4. gitlab搭建

https://mirror.tuna.tsinghua.edu.cn/gitlab-ce/yum/el7/ 清华大学源gitlab下载地址

git-jenkins ]# cd /opt/src/
git-jenkins ]# wget http://file.zhidianjh.com:28085/gitlab/gitlab-ce-12.3.0-ce.0.el7.x86_64.rpm
git-jenkins ]# yum localinstall gitlab-ce-12.3.0-ce.0.el7.x86_64.rpm -y
git-jenkins ]# vim /etc/gitlab/gitlab.rb
        external_url 'http://0.0.0.0'  #配置URL
        gitlab_rails['gitlab_email_enabled'] = true
        gitlab_rails['gitlab_email_from'] = "123@qq.com"  # 发件邮箱
        gitlab_rails['gitlab_email_display_name'] = 'OldXu-GitLab' # 发件人显示名称
        
        gitlab_rails['smtp_enable'] = true
        gitlab_rails['smtp_address'] = "smtp.qq.com"
        gitlab_rails['smtp_port'] = 465
        gitlab_rails['smtp_user_name'] = "123@qq.com" #发件人邮箱账户
        gitlab_rails['smtp_password'] = ""  #发件人邮箱客户端授权码
        gitlab_rails['smtp_domain'] = "qq.com"
        gitlab_rails['smtp_authentication'] = "login"
        gitlab_rails['smtp_enable_starttls_auto'] = true
        gitlab_rails['smtp_tls'] = true
        关闭不需要的程序(可选)
        1385 prometheus['enable'] = false
        1474 node_exporter['enable'] = fals
        1493 redis_exporter['enable'] = false
        1511 postgres_exporter['enable'] = false
        1560 grafana['enable'] = false
git-jenkins ]# cd /opt/src/
git-jenkins ]# wget https://gitlab.com/xhang/gitlab/-/archive/12-3-stable/gitlab-12-3-stable.tar.gz
git-jenkins ]# tar xf gitlab-12-3-stable.tar.gz 
git-jenkins ]# \cp -r gitlab-12-3-stable/* /opt/gitlab/embedded/service/gitlab-rails/
git-jenkins ]# gitlab-ctl reconfigure 
git-jenkins ]# gitlab-ctl start 

访问gitlab地址,初始化密码


image.png

调整偏好设置


image.png

image.png

调整gitlab配置文件,集成ldap
git-jenkins ]# vim /etc/gitlab/gitlab.rb
        gitlab_rails['ldap_enabled'] = true
        
        ###! **remember to close this block with 'EOS' below**
        gitlab_rails['ldap_servers'] = YAML.load <<-'EOS'
        main: # 'main' is the GitLab 'provider ID' of this LDAP server
            label: 'LDAP'
            host: '172.16.20.73'
            port: 389
            uid: 'cn'
        
        ###! **remember to close this block with 'EOS' below**
        gitlab_rails['ldap_servers'] = YAML.load <<-'EOS'
        main: # 'main' is the GitLab 'provider ID' of this LDAP server
            label: 'LDAP'
            host: '172.16.20.73'
            port: 389
            uid: 'cn'
            bind_dn: 'cn=admin,dc=bitshare,dc=com'
            password: '123456'
            encryption: 'plain' # "start_tls" or "simple_tls" or "plain"
            verify_certificates: true
            smartcard_auth: false
            active_directory: true
            allow_username_or_email_login: false
            lowercase_usernames: false
            block_auto_created_users: false
            base: 'dc=bitshare,dc=com'
            user_filter: ''
        EOS
git-jenkins ]# gitlab-ctl stop
git-jenkins ]# gitlab-ctl reconfigure 
git-jenkins ]# gitlab-ctl start

访问gitlab,此时会出来一个LDAP的标签,测试账号是否能够登录


image.png

5.部署禅道

git-jenkins ]#  cd /opt/src/
git-jenkins ]#  wget https://www.zentao.net/dl/zentao/15.2/ZenTaoPMS.15.2.zbox_64.tar.gz 
git-jenkins ]#  tar xf ZenTaoPMS.15.2.zbox_64.tar.gz -C /opt/
git-jenkins ]#  /opt/zbox/zbox start
PS :  如果所有的服务都部在同一台服务器上,记得修改端口
git-jenkins ]#  /opt/zbox/zbox status

我这里部署的是15.2的版本,需要安装插件进行集成ldap


image.png
image.png
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
禁止转载,如需转载请通过简信或评论联系作者。
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 218,204评论 6 506
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 93,091评论 3 395
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 164,548评论 0 354
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 58,657评论 1 293
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 67,689评论 6 392
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 51,554评论 1 305
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,302评论 3 418
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 39,216评论 0 276
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,661评论 1 314
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,851评论 3 336
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,977评论 1 348
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,697评论 5 347
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 41,306评论 3 330
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,898评论 0 22
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 33,019评论 1 270
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 48,138评论 3 370
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,927评论 2 355

推荐阅读更多精彩内容