Jenkins实现SpringBoot应用自动部署

        工具的出现,目的就是为了提高我们的工作效率,让我们把时间花在做重要的事情上。学习本文你需要具备基本的Linux知识,学习自动部署的前提是你能够手动在服务器完成部署。

1. 服务端环境

CentOS 7.0,Java1.8,Maven 3.5.2 ,git1.8(环境变量需配置完成,并非必须是相同的环境)

2. Jenkins的下载与安装

下载

官网:https://jenkins.io/

我这里是普通的部署只需要下载 Generic Java package (.war) 版本即可,关于其他的版本例如Docker版,可能会在后期推文中讲解。下载完毕后上传至您的Linux服务器中.

安装

在上一步中,你也可以在服务器端通过wget命令下载,命令:

wget http://mirrors.jenkins.io/war/latest/jenkins.war

运行Jenkins,命令:

nohup java -jar jenkins.war --httpPort=10010 > /usr/local/vcens/serv/log/jenkins/jenkins.log 2>&1 &

该命令意为: nohup .... & 是将指令挂在后台运行,java -jar jenkins.war 是启动Jenkins运行, --httpPort = 10010 为指定Jenkins的服务端口,> path >2>& 1 是将日志输出在指定目录下。建议将该脚本编写成shell文件放在服务端,执行该文件即可,为了方便下次操作。操作完成后进入日志目录查看,如果无误即可在浏览器输入 "ip+端口/域名"即可进入安装界面

12002721_MeHt.jpg

根据上边红色的路径查看初始密码;

vim /path路径

填写完毕后,要求安装插件,你可以选择安装全部,或者跳过安装,稍后手动安装

12002721_att5.jpg

安装全部插件如图,静待安装完成,然后设置登陆密码等。

至此,Jenkins安装完成。下图有一个任务是我自己的,默认是没有的。

12002721_DrMA.jpg

3.创建自动部署任务

添加git账户认证信息

:在面板首页> Credentials>System>Global credentials (unrestricted)>Add Credentials>填写您的认证信息并保存

12002721_04xk.jpg

配置Git

:在面板首页>系统设置>全局工具设置>找到git选项>删除默认配置>添加自己服务器端的git路径>取消勾选自动安装>保存>完成

:查看git 路径:

:添加git

12002721_tpnT.jpg

12002722_yOQF.jpg

新建ITEM>输入名称和选择构建一个自由风格的软件项目>确定

12002722_vaRR.jpg

在接下来的页面中你会看到如下Tab

12002722_KrmO.jpg

在源码管理中选择Git并Copy你的码云或Github地址到 Repository URL  ,选择您的认证信息,在Branch Specifier (blank for 'any') 中填写您的开发分支

12002722_UvHX.jpg

如你所见,在Credentials  右边的ADD按钮我不建议使用,因为在我这里尝试了很多次都是无法添加的,所以我把第一步改为了添加git配置)

你当然可以选择Generic Webhook Trigger作为您的构建触发器

12002722_wDEL.jpg

构建

:点击增加构建步骤选择 Execute Shell,当然您可以选择你需要的方式。

12002722_J25y.jpg

如下图,写入您的操作指令即可

12002722_DYtK.jpg

这里我的脚本执行流程为

     maven 清理编译代码> 查找服务相关的进程并停止服务 >将原工作服务文件备份> 将新构建完成的文件部署到工作目录>执行启动命令

至此,配置完成,点击保存按钮,你可以在面板首页看到你添加的构建任务,点击进入该任务,点击左侧的立即构建,即可开始处理任务。

12002722_g2Aw.jpg

选择Console Output即可查看运行日志。

12002722_qZcA.jpg

如果配置操作等没问题且看到了Finished :SUCCESS ,恭喜你,完成了自动部署的90%,当然,还有例外情况,如果您编写的shell有问题,虽然可以Finished :SUCCESS,但是,很遗憾,去检查一下吧。

4.配置WebHook

进入码云>选择你要配置的项目>管理>WebHook,你就可以看到如下界面

12002722_zgbm.jpg

我们需要做的就是配置WebHook里的URL信息,再打开Jenkins

:面板首页>系统管理>管理用户>选择你要操作的用户>点击左侧的设置>右侧的>API tokens >点击Show  API Token >你可以看到如下界面:

12002723_b3FY.jpg

然后根据以下格式配置码云的URL信息

http:User ID:API Token@你的Jenkins服务地址/generic-webhook-trigger/invoke

保存完成后,点击测试,去你的Jenkins面板首页查看任务是否已经开始构建。配置完成后只要你提交代码,Kenkins都会自动帮你拉取最新代码并进行自动构建,部署。

 

5.结束语:

个人建议不要配置WebHook进行自动部署,因为如果频繁提交,都会触发Jenkins执行自动编译构建部署,导致的后果可想而知了。你可以在提交代码后手动进入Jenkins服务器进行触发构建,更加安全。因为我是个人的小项目,所以并没有进行其他的比如测试等操作,Jenkins服务,生产环境都是在同一服务器进行,如果是更复杂的环境或项目,该教程仅作为基本参照,不一定能完全解决您的问题。

 

6.欢迎关注我的微信公众号

12002723_d5wr.jpg

 

转载于:https://my.oschina.net/vechar/blog/1605873

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值