jenkins是一个自动化服务器,比较成熟的ci工具,也可以是cd工具,能够实现自动化集成发布,集成了各种插件,实现各种功能。通过流水线提高工作效率。
1 jenkins安装
1.1 安装jdk
yum install -y java-1.8.0
1.2 安装jenkins
下载
[root@jenkins ~]# wget https://mirrors.tuna.tsinghua.edu.cn/jenkins/redhat-stable/jenkins-2.204.5-1.1.noarch.rpm
安装
[root@jenkins ~]# rpm -ivh jenkins-2.204.5-1.1.noarch.rpm
启动
[root@jenkins ~]# systemctl start jenkins.service
验证
[root@jenkins ~]# systemctl status jenkins.service
● jenkins.service - LSB: Jenkins Automation Server
Loaded: loaded (/etc/rc.d/init.d/jenkins; bad; vendor preset: disabled)
Active: active (running) since 二 2020-03-17 23:35:21 CST; 3s ago
Docs: man:systemd-sysv-generator(8)
Process: 1867 ExecStart=/etc/rc.d/init.d/jenkins start (code=exited, status=0/SUCCESS)
CGroup: /system.slice/jenkins.service
└─1890 /etc/alternatives/java -Dcom.sun.akuma.Daemon=daemonized -Djava.awt.headless=true -DJENKINS_HOME=/var/lib/jenkins -jar /usr/lib/jenkins/jenkins.war --logfile=/var/log/jen...
3月 17 23:35:18 jenkins systemd[1]: Starting LSB: Jenkins Automation Server...
3月 17 23:35:18 jenkins runuser[1872]: pam_unix(runuser:session): session opened for user jenkins by (uid=0)
3月 17 23:35:21 jenkins jenkins[1867]: Starting Jenkins [ 确定 ]
3月 17 23:35:21 jenkins systemd[1]: Started LSB: Jenkins Automation Server.
配置修改位置
/etc/sysconfig/jenkins
访问链接
http://192.168.32.133:8080
1.3 安装后配置
1.3.1 解锁jenkins
当您第一次访问Jenkins的时候,系统会要求您使用自动生成的密码对其进行解锁
可以通过日志文件获取
[root@jenkins jenkins]# tail -f jenkins.log
Please use the following password to proceed to installation:
b92ffcf6ea824bfe97ea464535556529
This may also be found at: /var/lib/jenkins/secrets/initialAdminPassword
![持续集成之jenkins从入门到应用](https://devopstack.cn/wp-content/uploads/2020/03/f9be8c650b7db5b09dde2c28a6075659.png)
输入b92ffcf6ea824bfe97ea464535556529解锁
1.3.2 自定义Jenkins插件
选择安装推荐的插件,后面有不需要的可以删除。
![持续集成之jenkins从入门到应用](https://devopstack.cn/wp-content/uploads/2020/03/0de4888c601ec88da7117b92addf7532.png)
选择之后如下图
![持续集成之jenkins从入门到应用](https://devopstack.cn/wp-content/uploads/2020/03/070962d39325b69be252257ac0b3493d.png)
开始安装插件
1.3.3 创建用户
![持续集成之jenkins从入门到应用](https://devopstack.cn/wp-content/uploads/2020/03/ae3b37026043640cb59e70d417e01bd6.png)
1.3.4 改源为国内源
sed -i 's/http:\/\/updates.jenkinsci.org\/download/https:\/\/mirrors.tuna.tsinghua.edu.cn\/jenkins/g' /var/lib/jenkins/updates/default.json && sed -i 's/http:\/\/www.google.com/https:\/\/www.baidu.com/g' /var/lib/jenkins/updates/default.json
#将jenkins下载插件的路径,更改为国内源
systemctl restart jenkins #重新启动Jenkins
2 配置jenkins 用户权限控制
2.1 安装Role-based Authorization Strategy插件
系统管理-管理插件-可选插件中安装Role-based Authorization Strategy
![持续集成之jenkins从入门到应用](https://devopstack.cn/wp-content/uploads/2020/08/e52f5651fefc6499e06d9302ac329ecf.png)
安装后重启jenkins使其生效
2.2 在系统设置里设置使用
在系统管理-Configure Global Security-授权策略-Role-Based Strategy,勾选Role-Based Strategy保存
![持续集成之jenkins从入门到应用](https://devopstack.cn/wp-content/uploads/2020/08/5553939295f9518aa5c4611e88229316.png)
2.3 创建用户
![持续集成之jenkins从入门到应用](https://devopstack.cn/wp-content/uploads/2020/08/011fc309456ab510c887f33b4096dc8a.png)
![持续集成之jenkins从入门到应用](https://devopstack.cn/wp-content/uploads/2020/08/712f55af2b3f910dd8d161c5283abc7d.png)
2.4 创建角色
系统管理页面进入Manage and Assign Roles,点击assign roles
![持续集成之jenkins从入门到应用](https://devopstack.cn/wp-content/uploads/2020/08/ebb5541b375e01c120979a5c4b57dd87.png)
创建项目角色
![持续集成之jenkins从入门到应用](https://devopstack.cn/wp-content/uploads/2020/08/e68af0ad33cb3ceaa9c2d673be32b668.png)
2.5 给创建的用户赋予相应的角色
![持续集成之jenkins从入门到应用](https://devopstack.cn/wp-content/uploads/2020/08/eb439e0d497cf2785aaad33d6e2140d4.png)
4 配置jenkins邮件告警功能
4.1 安装邮件插件
可以通过系统管理→管理插件→可选插件,选择Email Extension Plugin插件进行安装:
![持续集成之jenkins从入门到应用](https://devopstack.cn/wp-content/uploads/2020/08/a3523f598c53ffb85fedf27e161deab7.png)
在线安装,安装好之后重启Jenkins。
4.2 系统设置邮件
通过系统管理→系统设置,进行邮件配置:设置jenkins地址和管理员邮箱地址
![持续集成之jenkins从入门到应用](https://devopstack.cn/wp-content/uploads/2020/08/426e47fecb7dcd0cf2b87bba1cb933c8.png)
设置发件人信息配置邮件内容模版
邮箱内容模版
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>{ENV, var="JOB_NAME"}-第{BUILD_NUMBER}次构建日志</title>
</head>
<body leftmargin="8" marginwidth="0" topmargin="8" marginheight="4"
offset="0">
<table width="95%" cellpadding="0" cellspacing="0" style="font-size: 11pt; font-family: Tahoma, Arial, Helvetica, sans-serif">
<tr>
本邮件由系统自动发出,无需回复!<br/>
各位同事,大家好,以下为{PROJECT_NAME }项目构建信息</br> <td><font color="#CC0000">构建结果 -{BUILD_STATUS}</font></td>
</tr>
<tr>
<td><br />
<b><font color="#0B610B">构建信息</font></b>
<hr size="2" width="100%" align="center" /></td>
</tr>
<tr>
<td>
<ul>
<li>项目名称 : {PROJECT_NAME}</li> <li>构建编号 : 第{BUILD_NUMBER}次构建</li>
<li>触发原因: {CAUSE}</li> <li>构建状态:{BUILD_STATUS}</li>
<li>构建日志: <a href="{BUILD_URL}console">{BUILD_URL}console</a></li>
<li>构建 Url : <a href="{BUILD_URL}">{BUILD_URL}</a></li>
<li>工作目录 : <a href="{PROJECT_URL}ws">{PROJECT_URL}ws</a></li>
<li>项目 Url : <a href="{PROJECT_URL}">{PROJECT_URL}</a></li>
</ul>
<h4><font color="#0B610B">失败用例</font></h4>
<hr size="2" width="100%" />
FAILED_TESTS<br/>
<h4><font color="#0B610B">最近提交(#SVN_REVISION)</font></h4>
<hr size="2" width="100%" />
<ul>
{CHANGES_SINCE_LAST_SUCCESS, reverse=true, format="%c", changesFormat="<li>%d [%a] %m</li>"}
</ul>
详细提交: <a href="{PROJECT_URL}changes">${PROJECT_URL}changes</a><br/>
</td>
</tr>
</table>
</body>
</html>
设置邮件触发机制配置系统默认的邮箱配置
测试发送
![]()
4.3 配置项目使用邮件告警
在完成系统设置后,还需要给需要构建的项目进行邮件配置。 配置构建后操作模块 进入系统配置页面后,点击上方的构建后操作选项,配置内容如下:
![持续集成之jenkins从入门到应用](https://devopstack.cn/wp-content/uploads/2020/08/cf2bde1e526b6adf879a2fa0b9e607b1.png)
![持续集成之jenkins从入门到应用](https://devopstack.cn/wp-content/uploads/2020/08/fc359f2794f9a08a457d992125155698.png)
![持续集成之jenkins从入门到应用](https://devopstack.cn/wp-content/uploads/2020/08/3be32c3edb2c2af28ada3f0314343e47.png)
配置内容默认即可,邮件内容类型可以根据自己的配置选择,收件人列表可以从前面的系统设置中默认收件人选项配置。
构建触发邮件测试
![持续集成之jenkins从入门到应用](https://devopstack.cn/wp-content/uploads/2020/08/dbf75e8e145af0ca78bef4b9eb9fb2a5.png)
- 我的微信
- 这是我的微信扫一扫
-
- 我的微信公众号
- 我的微信公众号扫一扫
-