转 jenkins-整合git ssh maven spring-boot实现一键部署启动

安装好jenkins java maven git ssh

点击“系统管理”配置一下工具

转 jenkins-整合git ssh maven spring-boot实现一键部署启动_第1张图片

配置jdk

转 jenkins-整合git ssh maven spring-boot实现一键部署启动_第2张图片

配置git

转 jenkins-整合git ssh maven spring-boot实现一键部署启动_第3张图片

配置maven

转 jenkins-整合git ssh maven spring-boot实现一键部署启动_第4张图片

当然也可以自动安装,点击apply并保存

点击系统设置

转 jenkins-整合git ssh maven spring-boot实现一键部署启动_第5张图片

配置一下发邮件的地址,构建失败后能邮件通知

转 jenkins-整合git ssh maven spring-boot实现一键部署启动_第6张图片

ctrl+f找到邮件通知,配置发件,我是用的QQ邮箱

转 jenkins-整合git ssh maven spring-boot实现一键部署启动_第7张图片

这个地方的发件箱需要和刚才Jenkins Location配置的“系统管理员邮件地址”一致(试了好久一直失败╮(╯▽╰)╭,最后在晚上找到原因,就是这个)

配置完后勾选“通过发送测试邮件测试配置”测试是否配置好

转 jenkins-整合git ssh maven spring-boot实现一键部署启动_第8张图片

输入一个收件邮箱,点击“Test Configuration”,出现“Email was successfully send”,表示配置成功!

安装插件publish over SSH,这个工具能将打包好的文件发送到linux,也能够运行脚本,后边会用到

这里写图片描述

点击系统设置,ctrl+f找到Publish over SSH,配置

转 jenkins-整合git ssh maven spring-boot实现一键部署启动_第9张图片

Passphrase:这个是ssh keygen生成时的密码 
Path to key:私钥地址 
Name:随便写 
Hostname:远程主机地址 
Username:登录名 
Remote Directory:远程地址 
点击高级还能设置超时时间,代理等等 
配置好后点击“Test Configuration”测试连接,失败的话可能是没有将共要添加到远程主机的authorized_keys文件,解决办法可以参考http://blog.csdn.net/qbmmj/article/details/72152354 

 

 

单向登陆的操作过程(能满足上边的目的):
1、登录A机器 
2、ssh-keygen -t [rsa|dsa],将会生成密钥文件和私钥文件 id_rsa,id_rsa.pub或id_dsa,id_dsa.pub
3、将 .pub 文件复制到B机器的 .ssh 目录, 并 cat id_dsa.pub >> ~/.ssh/authorized_keys
4、大功告成,从A机器登录B机器的目标账户,不再需要密码了;(直接运行 #ssh 192.168.20.60 )

 


重新点击测试,出现提示“success”,配置成功! 
至此,基本的环境配置完成!

现在开始项目配置

新建一个maven项目

转 jenkins-整合git ssh maven spring-boot实现一键部署启动_第10张图片

输入名称,选中maven,点击ok

转 jenkins-整合git ssh maven spring-boot实现一键部署启动_第11张图片

因为已经建了一个,所以提示重名╮(╯▽╰)╭

开始项目配置

首先添加一点描述信息~

转 jenkins-整合git ssh maven spring-boot实现一键部署启动_第12张图片

勾选一下“丢弃旧的构建”,可以节省点磁盘空间

转 jenkins-整合git ssh maven spring-boot实现一键部署启动_第13张图片

勾选“参数化构建过程”,添加一个版本号!

转 jenkins-整合git ssh maven spring-boot实现一键部署启动_第14张图片

勾选“在必要的时候并发构建”,这样就不会排队了

这里写图片描述

在“源码管理”中选中git并配置

转 jenkins-整合git ssh maven spring-boot实现一键部署启动_第15张图片

在“构建设置”中勾选“E-mail Notification”这样构建失败了就会发用件通知你了^_^

转 jenkins-整合git ssh maven spring-boot实现一键部署启动_第16张图片

在“构建后操作”中点击“增加构建后操作步骤”,选中“Send build artifacts over SSH”

转 jenkins-整合git ssh maven spring-boot实现一键部署启动_第17张图片

配置“Send build artifacts over SSH”

转 jenkins-整合git ssh maven spring-boot实现一键部署启动_第18张图片

Name:这个是从刚才在“系统设置”里配置的“Publish over SSH”中选择的 
Source files:当前构建下你要发送的文件 
Remove prefix:需要移除的前缀 
Remote directory:发送的远程路径(会在刚才“系统设置”中配置的“Remote directory”后追加) 
Exec command:发送完成后执行的命令或者脚本(这里的shell脚本能够启动项目,实现一键启动^_^)

这里贴出脚本(由于不懂shell脚本,所以只能将就着用o(╯□╰)o)

#!/bin/bash
FOLDER="/root/server/bak/"
FILE="/root/server/qbmmj.jar"
FOLDERTEST="/root/server/bak/qbmmj/"
#time
PREFIX="time="
TIME=`date +%F`
TIMES=`date +%T`
KONGGE="--"
VER="1.5"
#关掉上次启动的项目
ID=`netstat -nlp | grep -w 8094 | sed -r 's#.* (.*)/.*#\1#'`
#echo "port is :$ID"
kill -9 $ID
#备份
if [ ! -d "$FOLDER" ]
then
        mkdir /root/server/bak
fi
if [ ! -d "$FOLDERTEST" ]
then
        mkdir /root/server/bak/qbmmj
fi
if [ -f "$FILE" ]
then
cp /root/server/qbmmj.jar /root/server/bak/qbmmj/qbmmj$VER$PREFIX$TIME$KONGGE$TIMES.jar
rm -f /root/server/qbmmj.jar
fi
mv /root/server/qbmmj-v1.0.jar /root/server/qbmmj.jar
#nohup /usr/java/jdk1.8.0_131/bin/java -jar /root/qbmmj/test-0.0.1-SNAPSHOT.jar &
#启动
/usr/local/jdk/bin/java -jar /root/server/qbmmj.jar
#echo "start success!"
exit 0

点击高级还可以设置超时时间等

注: 
这个地方运行的时候有可能会卡在控制台导致构建无法完成,我的解决办法是通过daemon来启动,将日志输出到文件 
daemon的安装阔以参考http://blog.csdn.net/qbmmj/article/details/72152479 
点击“apply”并保存

到此为止,配置完成!

点击“ Build with Parameters”,点击“开始构建”

转 jenkins-整合git ssh maven spring-boot实现一键部署启动_第19张图片

左侧可以查看正在进行的构建

转 jenkins-整合git ssh maven spring-boot实现一键部署启动_第20张图片

点进去后能够查看详情,点击“Console Output”能查看控制台打印信息

转 jenkins-整合git ssh maven spring-boot实现一键部署启动_第21张图片

出现“Finished:SUCCESS”,构建成功~^_^

首页我的视图中也能查看构件状态

这里写图片描述

你可能感兴趣的:(web开发)