一、Jenkins安装
1)安装JDK
Jenkins
需要依赖
JDK
,所以先安装
JDK1.8
yum install java-1.8.0-openjdk* -y
2)下载Jenkins安装包
wget https://mirrors.tuna.tsinghua.edu.cn/jenkins/redhat-stable/jenkins-2.204.3-1.1.noarch.rpm
3)安装并启动
sudo yum install jenkins-2.204.3-1.1.noarch.rpm
4)修改Jenkins配置
vi /etc/syscofig/jenkins
修改内容如下:
JENKINS_USER="root"
JENKINS_PORT="8888"
5)启动Jenkins
systemctl start jenkins
6)获取并输入admin账户密码
cat /var/lib/jenkins/secrets/initialAdminPassword
7)打开浏览器访问
8)跳过插件安装
因为
Jenkins
插件需要连接默认官网下载,速度非常慢,而且经过会失败,所以我们暂时先跳过插件安
装
9)添加一个管理员账户,并进入Jenkins后台
Jenkins安装结束!
二、Jenkins插件管理
Jenkins
本身不提供很多功能,我们可以通过使用插件来满足我们的使用。例如从
Gitlab
拉取代码,使用
Maven
构建项目等功能需要依靠插件完成。接下来演示如何下载插件。
修改
Jenkins
插件下载地址
Jenkins
国外官方插件地址下载速度非常慢,所以可以修改为国内插件地址:
Jenkins->Manage Jenkins->Manage Plugins
,点击
Available
vim /var/lib/jenkins/hudson.model.UpdateCenter.xml
<?xml version='1.1' encoding='UTF-8'?>
<sites>
<site>
<id>default</id>
<url>https://mirrors.tuna.tsinghua.edu.cn/jenkins/updates/update-center.json</url>
</site>
</sites>
然后在浏览器输入: http://192.168.0.129:8888/restart ,重启Jenkins。
持续集成环境(2)-Jenkins插件管理
修改
Jenkins
插件下载地址
Jenkins
国外官方插件地址下载速度非常慢,所以可以修改为国内插件地址:
1.Jenkins->Manage Jenkins->Manage Plugins,点击Available
2.cd /var/lib/jenkins/updates
sed -i 's/http:\/\/updates.jenkins-ci.org\/download/https:\/\/mirrors.tuna.tsinghua.edu.cn\/jenkins/g' default.json && sed -i 's/http:\/\/www.google.com/https:\/\/www.baidu.com/g' default.json
最后,
Manage Plugins
点击
Advanced
,把
Update Site
改为国内插件下载地址
https://mirrors.tuna.tsinghua.edu.cn/jenkins/updates/update-center.json
Sumbit后,在浏览器输入: http://192.168.66.101:8888/restart ,重启Jenkins。
后面下载插件的速度就会有比较明显的提升了..
下载中文汉化插件
Jenkins->Manage Jenkins->Manage Plugins
,点击
Available
,搜索
"Chinese"
持续集成环境(3)-Jenkins用户权限管理
1.我们可以利用
Role-based Authorization Strategy
插件来管理
Jenkins
用户权限
2.开启权限全局安全配置
授权策略切换为"Role-Based Strategy",保存
3.创建角色
在系统管理页面进入
Manage and Assign Roles
点击
"Manage Roles"
Global roles
(全局角色):管理员等高级用户可以创建基于全局的角色
Project roles
(项目角色):
针对某个或者某些项目的角色
我们添加以下三个角色:
baseRole
:该角色为全局角色。这个角色需要绑定
Overall
下面的
Read
权限,是为了给所有用户绑
定最基本的
Jenkins
访问权限。注意:如果不给后续用户绑定这个角色,会报错误:
用户名
is
missing the Overall/Read permission
role1
:该角色为项目角色。使用正则表达式绑定
"test1.*"
,意思是只能操作test1开头的项目。
role2
:该角色也为项目角色。绑定
"test2.*"
,意思是只能操作test2开头的项目。
保存。
4.创建用户
在系统管理页面进入
Manage Users
分别创建两个用户:jack和eric
目前这两个用户是没有登录权限的.需要
5.给用户分配角色
系统管理页面进入
Manage and Assign Roles
,点击
Assign Roles
绑定规则如下:
eric
用户分别绑定
baseRole
和
role1
角色
jack
用户分别绑定
baseRole
和
role2
角色
保存。
5.创建项目测试权限
以
zhangsan
管理员账户创建两个项目,分别为
test101
和
test201
结果为:
eric
用户登录,只能看到
itcast01
项目
jack
用户登录,只能看到
itheima01
项目
6.持续集成环境(4)-Jenkins凭证管理
凭据可以用来存储需要密文保护的数据库密码、
Gitlab
密码信息、
Docker
私有仓库密码等,以便
Jenkins
可以和这些第三方的应用进行交互。
安装
Credentials Binding
插件
要在
Jenkins
使用凭证管理功能,需要安装
Credentials Binding
插件
安装插件后,在这里管理所有凭证
可以添加的凭证有5种
Username with password
:用户名和密码
SSH Username with private key
: 使用
SSH
用户和密钥
Secret fifile
:需要保密的文本文件,使用时
Jenkins
会将文件复制到一个临时目录中,再将文件路径
设置到一个变量中,等构建结束后,所复制的
Secret fifile
就会被删除。
Secret text
:需要保存的一个加密的文本串,如钉钉机器人或
Github
的
api token
Certifificate
:通过上传证书文件的方式
常用的凭证类型有:
Username with password
(用户密码)
和
SSH Username with private key
(
SSH
密钥)
接下来以使用
Git
工具到
Gitlab
拉取项目源码为例,演示
Jenkins
的如何管理
Gitlab
的凭证。
7.安装
Git
插件和
Git
工具
为了让
Jenkins
支持从
Gitlab
拉取源码
1.需要安装
Git
插件以及在
CentOS7
上安装
Git
工具。
2.CentOS7
上安装
Git
工具
yum install git -y 安装
git --version 安装后查看版本
8.用户密码类型
1.创建凭证
2.在新建项目选择git管理源码的时候就可以使用这个凭证进行拉取