之前的博文介绍了Jenkins的入门安装,本文主要介绍如何使用jenkins进行git项目的集成构建与部署

1、首先进行全局工具配置

查看下本机的jdk、maven、git安装路径

echo $PATH

全局工具配置:系统管理->全局工具配置

JDK与Git环境配置

配置Ant与Maven环境,并保存应用

2、安装maven项目需要的插件:系统管理->插件管理

  Maven Integration plugin
SSH
Deploy to container Plugin 

maven集成插件:构建maven项目要用到的插件

shell插件:搜索ssh 选择ssh plugin插件安装即可。 

GitLab插件:从git网址拉取代码的插件 

容器部署插件:可以允许构建完之后可以进行项目的部署

3、新建一个maven的构建项目

3.1点击新建任务

输入描述,设置丢弃旧的构建 

如果出现以下报错,是因为存储不够,内存满了,

可以通过一、设置丢弃旧策略 二、将存储移动到存储容量大的盘

把默认目录/root/.jenkins,更改到其他大目录或者磁盘中。 我的是在centos中安装的,我把默认目录转移到 /home/jenkins/jenkinsWork/中

cp -r /root/.jenkins /home/jenkins/jenkinsWork/

更改目录所属用户

chown –R root /home/jenkins/jenkinsWork/

接着执行以下命令,更改jenkins存储目录

DAEMON_ARGS="--name=$NAME --inherit --env=JENKINS_HOME=/home/jenkins/jenkinsWork/ --output=$JENKINS_LOG --pidfile=$PIDFILE"

最后重启jenkins

其他情况可以参考博文:https://blog.csdn.net/ling811/article/details/74991899

3.2源码管理配置

本文使用的源码来自git,输入git的url,添加登录凭证,选择代码分支

凭证的添加,可以通过凭据,然后点击添加凭证进行相关凭证的添加:

 3.3构建触发器,可以设置触发构建的时间策略

定时脚本可参考

https://blog.csdn.net/zzy1078689276/article/details/77520441

如果选择提交代码就出发构建

要到git上面具体的setting新增Webhooks,如图

3.4 maven构建之前,maven构建配置,maven构建后的操作步骤

3.5 项目构建后的操作。本文主要介绍,如何将项目部署到服务器的容器上 

进入到tomcat下的conf目录,修改vim tomcat-users.xml文件,新增以下配置,如图所示:

 <role rolename="manager-gui"/>
<role rolename="manager-status"/>
<role rolename="manager-jmx"/>
<role rolename="manager-script"/>
<role rolename="admin-gui"/>
<role rolename="admin-script"/>
<user username="tomcat" password="tomcat" roles="manager-gui,manager-status,manager-jmx,manager-script,admin-gui,admin-script"/>

在全局凭证那,新增凭证。至此该配置的都配置好了,

3.6接着我们开始构建项目

红色为失败,蓝色为成功,可以点击具体的构建项目,然后通过控制台查看具体报错

比如本文的报错,估摸者是服务器没启动,启动tomcat重新试下

进入tomcat的bin目录./catalina start & 启动tomcat,然后重新试下,地址栏输入项目具体地址:

http://118.24.48.158:9080/testJenkins/index.jsp

效果如图:

最新文章

  1. Step by Step 配置使用HTTPS的ASP.NET Web应用[转载]
  2. Ubuntu下面su初始密码设置
  3. 烂泥:Linux源码包制作RPM包之Apache
  4. Leetcode 114, Flatten Binary Tree to Linked List
  5. html5学习小结,float练习。
  6. 致vi老大 2011.1
  7. STL容器是否是线程安全的
  8. iOSstoryboard xib下label怎么自适应宽度高度
  9. 移动App Crash的测试用例设计
  10. 关闭数据库下的所有连接操作 sql存储过程
  11. FTP命令具体解释(含操作实例)
  12. iOS 解决键盘挡住输入框的问题
  13. 大数据ssh疑点跟踪
  14. linux系统 之 curl命令
  15. easyui dialog 和 dategrid相关设置与应用
  16. Fetch的使用; Yarn命令集; NVM的管理;VueCLi3的使用;
  17. C++类和对象(一)&amp;&amp;实现offsetof宏&amp;&amp;this指针
  18. vue实例的方法
  19. 16 go操作Mysql
  20. SEL和IMP

热门文章

  1. bzoj3629 / P4397 [JLOI2014]聪明的燕姿
  2. Sublime Text3编辑器简介
  3. Ubuntu16.04下安装tensorflow(GPU加速)【转】
  4. Today&#39;s harvest !!!
  5. ImportError: cannot import name &#39;izip &amp; TypeError: &#39;float&#39; object cannot be interpreted as an integer
  6. php 添加时间戳
  7. python 执行字符串中的python代码
  8. Flutter的需要与原生交互的一些常用库
  9. [Kafka] - Kafka Java Consumer实现(二)
  10. Spring MVC文件上传教程 commons-io/commons-uploadfile