安装Jenkins之前先安装如下几项,这里默认已经安装不再赘述 1)JDK 2)maven 3)git 首先关闭防火墙, CentOS7关闭命令 systemctl stop firewalld.service
centOS 6.5 关闭命令 service iptables stop 永久关闭防火墙 chkconfig iptables of
关闭之后查看防火墙状态 service iptables status
进入Jenkins官网,点击下载按钮 https://www.jenkins.io/
点击红框位置下载
把war包上传到我们的服务器启动 java -jar jenkins.war
或者指定端口启动,此处指定为1080 java -jar jenkins-2.260.war --httpPort=1080
或者后台启动 nohup java -jar jenkins-2.260.war --httpPort=1080 &
第一次启动直接控制台启动,方便我们查看输出的口令,记得复制出来保存
页面访问服务http://IP地址:8080/,输入刚才保存的口令,点击继续
点击安装插件,如果部分安装不成功,则点击prety继续安装,如果反复安装都会失败,则可以先不管继续下一步,后面手动安装需要的插件 插件安装完成后配置我们的账号
如果找不到jdk、git、maven等安装路径,可以使用如which git命令查看
首先访问全局工具配置页面 配置maven的settings.xml 配置JDK,不要勾选自动安装 配置git,不要勾选自动安装 配置maven,不要勾选自动安装 配置完毕点击保存
打开插件管理页面 以下载Publish Over SSH插件为例子,点击可选插件,搜索框输入安装的插件名搜索,我这里安装过了所以搜索不出来 搜索出来后,点击名称进入下载页面 点击左上角进入版本库 选择对应的版本下载,我这里选择1.20(为什么不选择1.21,因为我安装了1.21可能和版本不兼容有点问题,我又重新装1.20问题解决)
点击“高级”,上传安装包点击提交自动安装 添加凭证
配置跳过执行test用例(可选) clean install -Dmaven.test.skip=true -Ptest 选择构建成功才运行项目 Run only if build succeeds
这一步选择执行脚本 输入框添加如下内容
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点击build now启动部署
在任务页面可以看到构建历史,可以点击进入查看相关信息 常用的 看控制台输出 出现构建成功的字样说明部署成功了,我们可以通过访问服务查看是否成功部署
解决方法:使用daemonize工具。 下载工具
git clone http://github.com/bmc/daemonize.git
下载后依次执行下面命令
cd daemonize ./configure make make install
查看 daemonize版本,出现版本则安装成功 daemonize -v
make 和 make install 需要安装gcc gcc++环境,如果没有的话,先自行安装
解决办法:按照提示冲下下载对应版本使用就行
你也看到了我的汉化没有完全成功。。。。想下不影响使用就没有过多研究了。。有兴趣的自行百度了 说明:本例是在Jenkins服务器本机上进行部署相对简单,如果是部署到别的linux机器上,还需要配置ssh把jar包传输到目标服务器部署
测试项目地址 https://github.com/JsonTom888/springboot-jenkins