Jenkins学习之自动构建部署maven项目
一、前置条件
操作的机子上已经安装了tomcat、maven、git、jdk
我的操作系统是ubuntu 14.04
二、下载jenkins部署并启动
点击 jenkins 下载jenkins war包
将jenkins的war包放入tomcat目录下的webapps目录下
启动tomcat,在浏览器输入http://本机ip:tomcat端口号/jenkins 进行访问
初始页面应该如下
三、jenkins初始配置
6.png1. 输入初始密码
稍等片刻,启动完成,会让你输入初始密码,直接去页面指定的文件查看就行
2.png输入如下命令,即可获取密码
cat /root/.jenkins/secrets/initialAdminPassword
2.插件安装
输入密码后会进入插件选择页面,我直接选择了推荐,等待插件安装完成即可
3. 管理员帐号设置
5.png 4.png四、jenkins使用
1. 配置邮件通知
点击页面左方的系统管理,然后选择右方第一个系
统配置
系统配置有很多选项= = ,我目前只是用到了他的邮件通知,感觉很方便,配置如下
![8.png](http:https://img.haomeiwen.com/i6907580/db9ce0355a718a38.png?imageMogr2/auto-
![Uploading 13_539325.png . . .]
orient/strip%7CimageView2/2/w/1240)
这里的密码是qq邮箱的授权码,具体获取方式如下
,先进入你的qq邮箱,选择设置
然后选择账户,往下翻找到smtp配置
11.png
点击获取授权码,按照要求发送短信。发送完成后点击我已发送,会生成一个授权码。将授权码填入上面的密码框就行
12.png
可以勾选那个测试选项,输入一个邮箱地址,点击send,看看那个邮箱有没有获取到邮件吧。- - 我是成功了!!!
2.配置系统工具
再点击系统管理,选择Global Tool Configuration,配置以下下述软件的位置,虽然不配置也可以自动下载,但是jenkins默认的下载地址都是国外的,下载很慢,所以还是先自己安装好,在这里配置一下路径就行了
14.png
配置maven配置文件地址,就在maven的conf目录下的settings.xml文件
15.png配置JDK位置
16.png配置git位置,git是安装的,可以使用下述命令获取git位置
whereis git
17.png
配置maven位置
18.png3.安装插件
目标是将项目打包后发布到tomcat中去,所以现在我们需要安装一个发布到tomcat的jenkins插件
点击系统管理,选择管理插件
28.png点击可选插件,然后在右上方搜索框搜索container,选择Deploy to container Plugin,点击安装即可
25.png五、jenkins使用
好了,上述的配置全部完成,可以使用jenkins了
1.新建项目
点击左上方新建,新建构建项目
19.png
填写项目名,选择自由风格
20.png
2. 项目配置
①.源码位置
配置你的源码地址和访问这个地址的账户密码
21.png
②构建步骤
选择maven构建
22.png
下拉框选择之前配置的maven位置,然后下面写具体的打包命令就可以了
23.png
③构建后步骤
选择发布war包到一个容器中
27.png
编写war包的位置和tomcat的用户密码
26.png
tomcat用户名密码配置
进入你准备用来发布项目的tomcat下的conf目录下,在tomcat-user.xml加上如下配置,重启tomcat即可
<role rolename="manager-gui"/>
<role rolename="admin-gui"/>
<role rolename="manager-script"/>
<user username="tomcat" password="tomcat" roles="manager-gui,admin-gui,manager-script"/>
3.开始构建
点击左方的立即构建,下方会出现构建队列
29.png
点击进入队列,然后点击Console output 可以看到构建过程中打印的日志信息,可以用来在构建失败时排错
30.png 31.png可以看到结果是构建成功
32.png
看一看是否成功发布了
我的tomcat地址是http://119.23.228.244,之前填写contextpath是test
成功访问到了,使用jenkins自动构建部署maven项目成功
六、后记
就这寥寥数字,花了我一下午。。。剩下的
- 配置webhook钩子,实现push代码触发构建部署
- 实现自动构建docker镜像,并将项目部署到docker容器里
下周再写!