Jenkins系列 第二章 Jenkins的安装和设置

该系列文章详细介绍了Jenkins的安装和配置过程,包括设置Maven、发布Jar包到服务器、使用sshPublishers、构建触发器如定时构建和PollSCM,以及配置邮箱接收构建通知。此外,还讨论了不同方式的Docker容器构建,如通过Dockerfile创建镜像并执行构建。
摘要由CSDN通过智能技术生成

系列文章目录

Jenkins系列 第一章 安装部署: link
Jenkins系列 第二章 Jenkins的安装和设置: link



1 Jenkins 的安装和设置

1.1 官网 https://www.jenkins.io/zh/

JDK 1.8环境
在这里插入图片描述
点击下载
在这里插入图片描述
上传Jenkins.war至服务器
在这里插入图片描述
运行命令

java -jar jenkins.war

在这里插入图片描述
在这里插入图片描述
记录下出事密码c2开头的那个
在这里插入图片描述

1.2 安装maven

apache-maven-3.9.3-bin.tar.gz
解压

tar xcvf apache-maven-3.9.3-bin.tar.gz 

移动

mv apache-maven-3.9.3 /usr/local//maven

运行

/usr/local/maven/bin/mvn

jenkins安装maven插件
在这里插入图片描述
新建一个item的时候会多出maven的选项
在这里插入图片描述
安装git

yum install -y git

安装完后测试Repository URL
公开项目不需要Credentials
在这里插入图片描述
分支默认master
在这里插入图片描述
默认每次使用上次构建的pom文件依赖,以达到连续构建相同pom的项目
在这里插入图片描述
配置maven
在这里插入图片描述
pom.xml前面配置项目名称
在这里插入图片描述
配置打完包后上传服务器的选项
在这里插入图片描述

1.3 Jenkins发布jar包至服务器

安装插件
publish over ssh
安装完后进入
在这里插入图片描述
配置publish over ssh
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

1.4 ssh publishers超时机制

在这里插入图片描述
优化后
nohup java -jar /root/xxoo/demo*.jar >mylog.log 2>&1 &

nohup java -jar /root/xxoo/demo*.jar >mylog.log &
在这里插入图片描述

1.5 pre steps 构建前清理进程

在这里插入图片描述
脚本
1.删除当前进程
2.参数为demo

#!/bing/bash
#删除历史数据
rm -rf xxoo
appname=$1
#获取传入的参数
echo "arg:$1"
#获取正在运行的jar包pid
pid='ps -ef | grep $1| grep 'java -jar' | awk '{printf $2}''

echo $pid
#如果pid为Null提示以下否则执行kill命令 使用-z做空值判断
if [ -z $pid ];
		then
				echo "$appname not started"
		else
				kill -9 $pid
				echo "$appname stoping....."

#如果check是Null 的说明删除成功
check='ps -ef | grep  -w $pid | grep java'
if [ -z $check];
		then
			echo "$appname pid:$pid is stop"
		else
			echo "$appname stop failed"
fi

执行

./x.sh demo

配置执行x.sh
在这里插入图片描述

1.6 构建触发器

合并分支后触发构建
在这里插入图片描述
浏览器调用会触发钩子,只能是登录状态
安装插件就可以免登录
在这里插入图片描述
不过必须参考下面的url才可以触发插件效果
http://192.168.41.101:8080/buildByToken/build?job=first&token=123123
在这里插入图片描述

在这里插入图片描述

访问
在这里插入图片描述
jenkins构建队列会有任务
在这里插入图片描述
使用gitlib发起回调事件
在这里插入图片描述
勾选推送事件
在这里插入图片描述
勾选合并请求事件
在这里插入图片描述
ssl取消
在这里插入图片描述
本地请求不支持如何处理
在这里插入图片描述
1.切管理员身份
在这里插入图片描述
2.进入设置——>网络
在这里插入图片描述
3.勾选允许来自web hooks和服务对本地网络的请求
在这里插入图片描述
4.提交与合并都会触发的重复优化
取消push
在这里插入图片描述
5.总结
钩子会频繁的触发构建项目不推荐

1.7 几种构建方式

在这里插入图片描述

1.7.1 定时构建

在这里插入图片描述
在这里插入图片描述

配置位置
在这里插入图片描述
例:
在这里插入图片描述

参考cron表达式网址:https://crontab.guru/

1.7.2 PollSCM 触发器

使用cron表达式定时检查代码变更,变更后构建job

1.8 配置邮箱接收构建通知

163发件邮箱 smtp邮箱服务器配置
在这里插入图片描述
在这里插入图片描述
保存授权码
在这里插入图片描述
收件邮箱配置
在这里插入图片描述
jenkins URL:配置jenkins的服务地址
系统管理员邮件地址:发件地址
在这里插入图片描述
Extended E-mail Notification
在这里插入图片描述
添加用户
在这里插入图片描述

在这里插入图片描述
事件触发器
在这里插入图片描述
在这里插入图片描述
点击高级
在这里插入图片描述
在这里插入图片描述
配置完测试一下
在这里插入图片描述
构建后操作
在这里插入图片描述
点击 Advanced Settings
在这里插入图片描述
期望收到的组增加Build User
在这里插入图片描述
失败的组
在这里插入图片描述
成功的组
在这里插入图片描述

1.9 容器构建的几种方式

hub.docker.com

1.9.1 搜索jdk

在这里插入图片描述

1.9.2 dockerFile文件

在这里插入图片描述

FROM openjdk:11 
COPY ./ user/src/myapp
WORKDIR /usr/src/myapp
RUN javac Main.java
CMD ["java","Main"]

1.9.3 上传jar包

在这里插入图片描述

1.9.4 移动到目录

在这里插入图片描述

1.9.5 新建DockerFile

vi dockerfile

在这里插入图片描述

FROM openjdk:11
EXPOSE 8080
WORKDIR /root
##目录相对于WORKDIR
ADD jarfile/demo*.jar /root/app.jar
ENTRYPOINT ["java","-jar","/root/app.jar"]

1.9.6 执行dockerbuild

在这里插入图片描述
镜像准备就绪
在这里插入图片描述
启动镜像
在这里插入图片描述
测试访问
在这里插入图片描述

1.9.7 外挂目录方式

使用镜像openjdk外挂目录方式运行,不需要上面编写dockerFile文件。
相比于前者,编写dockerFile更灵活可以增加自己的独特配置
在这里插入图片描述
测试访问正常
在这里插入图片描述

1.10 jenkins执行dockerFile

流程:清理->构建
清理配置
在这里插入图片描述
启动的时候配置docker启动
在这里插入图片描述

1.10.1 jenkins配置docker镜像

修改exec command
在这里插入图片描述
java 项目里新建目录增加dockerfile文件后提交git
在这里插入图片描述
删除command
在这里插入图片描述
配置项
在这里插入图片描述
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值