1、Jenkins安装
安装Jenkins之前先安装如下几项,这里默认已经安装不再赘述
1)JDK
2)maven
3)git
首先关闭防火墙,
CentOS7关闭命令
systemctl stop firewalld.service
centOS 6.5
关闭命令
service iptables stop
永久关闭防火墙
chkconfig iptables of
关闭之后查看防火墙状态
service iptables status
1.1、下载安装包
进入Jenkins官网,点击下载按钮
https://www.jenkins.io/
点击红框位置下载
1.2、启动服务
把war包上传到我们的服务器启动
java -jar jenkins.war
或者指定端口启动,此处指定为1080
java -jar jenkins-2.260.war --httpPort=1080
或者后台启动
nohup java -jar jenkins-2.260.war --httpPort=1080 &
第一次启动直接控制台启动,方便我们查看输出的口令,记得复制出来保存
1.3、安装插件
页面访问服务http://IP地址:8080/,输入刚才保存的口令,点击继续
点击安装插件,如果部分安装不成功,则点击prety继续安装,如果反复安装都会失败,则可以先不管继续下一步,后面手动安装需要的插件
插件安装完成后配置我们的账号
2、Jenkins配置
2.1、全局工具配置
如果找不到jdk、git、maven等安装路径,可以使用如which git命令查看
首先访问全局工具配置页面
配置maven的settings.xml
配置JDK,不要勾选自动安装
配置git,不要勾选自动安装
配置maven,不要勾选自动安装
配置完毕点击保存
2.2、下载安装插件
打开插件管理页面
以下载Publish Over SSH插件为例子,点击可选插件,搜索框输入安装的插件名搜索,我这里安装过了所以搜索不出来
搜索出来后,点击名称进入下载页面
点击左上角进入版本库
选择对应的版本下载,我这里选择1.20(为什么不选择1.21,因为我安装了1.21可能和版本不兼容有点问题,我又重新装1.20问题解决)
点击“高级”,上传安装包点击提交自动安装
添加凭证
3、部署项目
3.1、点击新建item
3.2、输入名称,选择“构建一个maven项目”
3.3、配置构建记录保存时间
3.4、配置git仓库和分支
3.5、点击添加凭证
3.6、勾选日志打印到控制台
3.7、配置跳过执行test用例
配置跳过执行test用例(可选)
clean install -Dmaven.test.skip=true -Ptest
选择构建成功才运行项目
Run only if build succeeds
3.8、配置执行脚本
这一步选择执行脚本
输入框添加如下内容
chmod +x Jenkins-in/start.sh
Jenkins-in/start.sh
最后点击保存
在我们的springboot项目新建Jenkins-in目录,新建文件start.sh
添加如下内容,推到库上
JARFILE=springboot-jenkins-0.0.1-SNAPSHOT.jar
ps -ef | grep $JARFILE | grep -v grep | awk '{print $2}' | xargs kill -9
mv target/$JARFILE /mysoft/javalog/$JARFILE
cd /mysoft/javalog
BUILD_ID=dontKillMe nohup java -jar $JARFILE > /mysoft/javalog/springboot.log &
if [ $? = 0 ];then
echo "springboot started successfully"
fi
4、启动部署
4.1、回到首页,能看到我们刚创建的任务
4.2、点击名称进入任务页面
点击build now启动部署
4.3、构建日志查看
在任务页面可以看到构建历史,可以点击进入查看相关信息
常用的 看控制台输出
出现构建成功的字样说明部署成功了,我们可以通过访问服务查看是否成功部署
5、常见问题
5.1、显示构建成功也没报错,查看linux进程发现服务却没运行
解决方法:使用daemonize工具。
下载工具
git clone http://github.com/bmc/daemonize.git
下载后依次执行下面命令
cd daemonize
./configure
make
make install
查看 daemonize版本,出现版本则安装成功
daemonize -v
make 和 make install 需要安装gcc gcc++环境,如果没有的话,先自行安装
5.2、点击Manage Jenkins出现如下报错
解决办法:按照提示冲下下载对应版本使用就行
5.3、汉化问题
你也看到了我的汉化没有完全成功。。。。想下不影响使用就没有过多研究了。。有兴趣的自行百度了
说明:本例是在Jenkins服务器本机上进行部署相对简单,如果是部署到别的linux机器上,还需要配置ssh把jar包传输到目标服务器部署
测试项目地址
https://github.com/JsonTom888/springboot-jenkins