docker-comose搭建openldap + jenkins

  • 前言
  • 一、jenkins简介
  • 二、docker及docker-compose安装
  • 三、docker-compose安装jenkins(依赖于openldap)
  • 四、启动docker容器
  • 五、配置jenkins
  • 1.初始化jenkins
  • 2.jenkins配置ldap
  • 3.修改授权策略
  • 4.构建项目配置
  • 六、完工及测试
  • 1.管理组登陆结果
  • 2.开发组登陆结果
  • 3.测试组登陆结果
  • 4.生产组登陆结果
  • 七、后记
  • 八、关于jenkins升级




前言


博主前面已经写过如何使用docker-comose搭建openldap,本文将介绍 openldap + jenkins 做jenkins分组权限控制项目构建


一、jenkins简介

jenkins是什么就不多说了,后续内容将主要介绍如何使用docker-comose搭建jenkins,并配合使用openldap做用户接入及分组权限控制项目构建。

二、docker及docker-compose安装

三、docker-compose安装jenkins(依赖于openldap)

version: '3'
services:
  # use jenkis build docker project must do [ sudo chmod 666 /var/run/docker.sock ] first on local machine
  jenkins:
    image: jenkins/jenkins:centos7
    container_name: jenkins
    restart: always
    environment:
      - TZ=Asia/Shanghai
    volumes:
      - /var/docker-volumes/jenkins_home:/var/jenkins_home
      #- /usr/bin/docker:/usr/bin/docker
      #- /var/run/docker.sock:/var/run/docker.sock
      #- /usr/lib64/libltdl.so.7:/usr/lib/x86_64-linux-gnu/libltdl.so.7
    ports:
      - 8080:8080
    depends_on:
      - openldap

四、启动docker容器

将第二步的内容copy并写入到文件docker-compose.yml后在当前文件所在目录执行docker-compose up -d 开始拉取镜像文件并创建容器

细节:如果将jenkins_home挂载到了宿主机,需要将宿主机文件夹权限修改为777

五、配置jenkins

1.初始化jenkins

登陆http://localhost:8080

jenkins的ldap 登不上了怎么办 jenkins配置ldap_jenkins


初始密码获取(一般要等容器启动后三五分钟才可以输入初始密码)

jenkins的ldap 登不上了怎么办 jenkins配置ldap_docker_02


选择插件来安装,因为要安装ldap插件


jenkins的ldap 登不上了怎么办 jenkins配置ldap_容器_03

这两个必选,如果错过了后面也可见自己手动安装插件

jenkins的ldap 登不上了怎么办 jenkins配置ldap_ldap_04


等待安装,耗时相对比较长

jenkins的ldap 登不上了怎么办 jenkins配置ldap_ldap_05


jenkins的ldap 登不上了怎么办 jenkins配置ldap_docker_06


jenkins的ldap 登不上了怎么办 jenkins配置ldap_docker_07

如果安装了汉化插件但是登陆后并没有汉化,重启docker容器即可

2.jenkins配置ldap

进入jenkins选择系统管理 —> 全局安全配置

jenkins的ldap 登不上了怎么办 jenkins配置ldap_ldap_08

配置ldap参数

jenkins的ldap 登不上了怎么办 jenkins配置ldap_容器_09

测试ldap用户

jenkins的ldap 登不上了怎么办 jenkins配置ldap_ldap_10


jenkins的ldap 登不上了怎么办 jenkins配置ldap_ldap_11


jenkins的ldap 登不上了怎么办 jenkins配置ldap_jenkins_12

出现成功后保存即可

3.修改授权策略

jenkins权限配置这一步骤过程中,千万不要推出登陆..............否则要重新来过
解决方案就是把Anonymous用户变成admin,配置完成后里面把Anonymous关掉

jenkins的ldap 登不上了怎么办 jenkins配置ldap_可编辑_13

jenkins的ldap 登不上了怎么办 jenkins配置ldap_容器_14

jenkins的ldap 登不上了怎么办 jenkins配置ldap_ldap_15


jenkins的ldap 登不上了怎么办 jenkins配置ldap_docker_16

jenkins的ldap 登不上了怎么办 jenkins配置ldap_容器_17


jenkins的ldap 登不上了怎么办 jenkins配置ldap_可编辑_18

4.构建项目配置

jenkins的ldap 登不上了怎么办 jenkins配置ldap_docker_19

jenkins的ldap 登不上了怎么办 jenkins配置ldap_可编辑_20

分别构建三个工程

jenkins的ldap 登不上了怎么办 jenkins配置ldap_容器_21

配置完成后重启容器

六、完工及测试

1.管理组登陆结果

管理组登陆后所有项目可见并且可以点击构建、编辑

jenkins的ldap 登不上了怎么办 jenkins配置ldap_容器_22

jenkins的ldap 登不上了怎么办 jenkins配置ldap_docker_23

2.开发组登陆结果

开发组用户登陆后所有项目可见,仅dev开头的项目可以点击构建,所有项目不可编辑

jenkins的ldap 登不上了怎么办 jenkins配置ldap_可编辑_24


jenkins的ldap 登不上了怎么办 jenkins配置ldap_可编辑_25

3.测试组登陆结果

测试组用户登陆后所有项目可见,仅test开头的项目可以点击构建,所有项目不可编辑

jenkins的ldap 登不上了怎么办 jenkins配置ldap_ldap_26

jenkins的ldap 登不上了怎么办 jenkins配置ldap_可编辑_27

4.生产组登陆结果

生产组用户登陆后所有项目可见,仅test开头的项目可以点击构建,所有项目不可编辑

jenkins的ldap 登不上了怎么办 jenkins配置ldap_ldap_28

jenkins的ldap 登不上了怎么办 jenkins配置ldap_docker_29

七、后记

灵活调整Manage and Assign Roles,按需调整权限。

八、关于jenkins升级

先把官网最新的jenkins.war包下载到宿主机
然后在宿主机上执行

docker cp jenkins.war jenkins:/usr/share/jenkins/ && docker restart jenkins

重新登陆后jenkins完成升级