Jenkins入门【转】
一、Jenkins概述
二、安装Jenkins
https://pkg.jenkins.io/redhat-stable/ sudo wget -O /etc/yum.repos.d/jenkins.repo https://pkg.jenkins.io/redhat-stable/jenkins.repo sudo rpm --import https://pkg.jenkins.io/redhat-stable/jenkins.io.key yum install jenkins
相关包介绍
/usr/lib/jenkins/jenkins.war WAR包 /etc/sysconfig/jenkins 配置文件 /var/lib/jenkins/ 默认的JENKINS_HOME目录 /var/log/jenkins/jenkins.log Jenkins日志文件
配置与启动
[root@jspgou ~]# lsof -i:8080 [root@jspgou ~]# /etc/init.d/jenkins start Starting jenkins (via systemctl): [ OK ] [root@jspgou ~]# lsof -i:8080 COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME java 26969 jenkins 162u IPv6 68624 0t0 TCP *:webcache (LISTEN) [root@jspgou ~]# rpm -qa | grep jenkins jenkins-2.107.1-1.1.noarch [root@jspgou ~]# rpm -ql jenkins /etc/init.d/jenkins /etc/logrotate.d/jenkins /etc/sysconfig/jenkins /usr/lib/jenkins /usr/lib/jenkins/jenkins.war /usr/sbin/rcjenkins /var/cache/jenkins /var/lib/jenkins /var/log/jenkins [root@jspgou ~]#
在浏览器中登录,初始密码在如下文件中:
[root@jspgou ~]# cat /var/lib/jenkins/secrets/initialAdminPassword 389c09a28ecb42fe871a82d4414c5472 [root@jspgou ~]#
三、在WEB中配置Jenkins
登录
系统管理--添加插件
添加ssh、maven等相关插件
以下插件需要选择安装
Ansible plugin
Ant Plugin
Blue Ocean
Build Timeout
Email Extension Plugin
Git Parameter Plug-In
Gitlab Hook Plugin
GitLab Plugin
Maven Invoker plugin
Maven Integration plugin
Publish Over SSH
SSH plugin
SSH Slaves plugin
方法如下图所示:
系统管理--系统配置
系统配置--指定管理员邮箱地址
系统配置--设置邮件通知的SMTP服务器及其相关配置
系统配置--设置SSH 远程服务器地址及其配置
如果需要指定私钥文件,还需要将私钥复制到/var/lib/jenkins 目录,如下所示:
mkdir .ssh
cp ~/.ssh/id_rsa .ssh/
chown -R jenkins.jenkins .ssh
如下图所示:
系统管理--全局工具配置
全局工具配置--配置jdk
全局工具配置--配置maven
在Gitlab创建一个Jenkins用户:
并将Jenkins用户加入到相应的组(Group)
在Jenkins中添加相关的Credentials:
将Gitlab中Jenkins用户的username 和密码填入Credentials中:
创建Jenkins项目(例1):
配置项目中的git server
添加访问git server的ssh密钥(私钥)
配置项目中的构建(使用maven构建包)
配置项目中的构建后动作
在配置完毕的项目上进行构建
查看本次构建过程
构建报告
创建Jenkins项目(例2):
首先在使用git 为 code 添加Tag,如下所示:
[eric@meteor maven01]$ vim src/main/java/inspiry/cn/maven/HelloWorld.java
[eric@meteor maven01]$ git add .
[eric@meteor maven01]$ git commit -m 'stable branch'
[stable 4cfc2e3] stable branch
1 file changed, 1 insertion(+)
[eric@meteor maven01]$ git tag v1.0.2
[eric@meteor maven01]$ git tag
v1.0.2
[eric@meteor maven01]$ git push -u origin stable
Counting objects: 17, done.
Delta compression using up to 8 threads.
Compressing objects: 100% (4/4), done.
Writing objects: 100% (9/9), 583 bytes | 0 bytes/s, done.
Total 9 (delta 2), reused 0 (delta 0)
remote:
remote: To create a merge request for stable, visit:
remote: http://192.168.60.119/plat-sp/maven01/merge_requests/new?merge_request%5Bsource_branch%5D=stable
remote:
To git@192.168.60.119:plat-sp/maven01.git
* [new branch] stable -> stable
Branch stable set up to track remote branch stable from origin.
[eric@meteor maven01]$
[eric@meteor maven01]$ git branch
master
* stable
[eric@meteor maven01]$ git push origin v1.0.2
Total 0 (delta 0), reused 0 (delta 0)
To git@192.168.60.119:plat-sp/maven01.git
* [new tag] v1.0.2 -> v1.0.2
[eric@meteor maven01]$
然后在gitlab中可以查看相关的Tag:
然后添加Jenkins项目时设置如下:
选择“参数化构建过程”,如下所示:
指定gitlab 仓库时使用http方式,并选择相关包含读取权限的credentials,如下所示:
在构建环境中选择“在构建前删除workspace”
构建过程选择全局设置的MAVEN名称,并指定参数,如下所示:
构建后将target/*.jar 包推到SSH server 的指定目录下,并执行相关脚本或shell语句,如下所示:
选择项目构建时,指定需要构建的Tag,如下所示:
构建后结果如下所示:
转自
Jenkins入门-WorkNote-51CTO博客 https://blog.51cto.com/caiyuanji/2118330
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?
2018-08-16 MySQL全备+binlog恢复方法之伪装master【原创】
2017-08-16 elasticsearch删除索引报错【原】
2017-08-16 ab的使用方法【转】