之前的博文介绍了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

效果如图:

②Jenkins集成—集成构建部署的更多相关文章

  1. Jenkins安装与构建部署

    Jenkins是一个开源软件项目,旨在提供一个开放易用的软件平台,使软件的持续集成变成可能.Jenkins是基于Java开发的一种持续集成工具,用于监控持续重复的工作,功能包括:1.持续的软件版本发布 ...

  2. Docker+Rancher构建部署流水线

    工作多年,在项目部署方面, 1:以前用ftp或者rz上传更新的,每次更新算上打包.目录切换.更新遗漏.备份.出错还原.启动等工作都得搞上一来小时甚至更长,要是多两台服务器那心都凉了: 2:后来有用sv ...

  3. 构建Docker+Jenkins持续集成环境

    docker和Jenkins不是什么新东西了,两者结合也不是什么稀奇的事情,也已经有很多Jenkins和docker相结合的文章,此文仅为自己的一点心得实践,如有不对的地方,欢迎大家纠正. 先贴上大致 ...

  4. Jenkins+Maven+Git搭建持续集成和自动化部署的配置手记

    前言    持续集成这个概念已经成为软件开发的主流,可以更频繁的进行测试,尽早发现问题并提示.自动化部署就更不用说了,可以加快部署速度,并可以有效减少人为操作的失误.之前一直没有把这个做起来,最近的新 ...

  5. 使用Docker构建持续集成与自动部署的Docker集群

    为什么使用Docker " 从我个人使用的角度讲的话  部署来的更方便 只要构建过一次环境 推送到镜像仓库 迁移起来也是分分钟的事情 虚拟化让集群的管理和控制部署都更方便 hub.docke ...

  6. windows部署jenkins持续集成maven测试项目不能访问测试报告

    买了一台阿里云的服务器用于练习maven test项目,系统版本wiondows server 2012,将jenkins war包部署在Tomcat服务器上,项目构建后,生成的报告在C:\Windo ...

  7. Linux-GitLab+Jenkins持续集成+自动化部署

    GitLab+Jenkins持续集成+自动化部署 什么是持续集成? (1)Continuous integration (CI) 持续集成是一种软件开发实践,即团队开发成员经常集成他们的工作,通常每个 ...

  8. Asp.net Core 使用Jenkins + Dockor 实现持续集成、自动化部署(三):搭建jenkins集群环境

    写在前面 大家可以看到本文的配图,左边是jenkins单机环境,右边是jenkins集群.个中区别,不言而喻,形象生动. 前面我分别介绍了.net core 程序的多种部署方式(无绝对孰优孰劣): 1 ...

  9. Asp.net Core 使用Jenkins + Dockor 实现持续集成、自动化部署(二):部署

    前面又是废话 我之前写过: Asp.Net Core 程序部署到Linux(centos)生产环境(一):普通部署 Asp.Net Core 程序部署到Linux(centos)生产环境(二):doc ...

  10. Asp.net Core 使用Jenkins + Dockor 实现持续集成、自动化部署(一):Jenkins安装

    2019/1/31更新,经过我一段时间的使用 建议大家的jenkins还是不要使用docker方式安装 建议大家的jenkins还是不要使用docker方式安装 建议大家的jenkins还是不要使用d ...

随机推荐

  1. OpenResty api 网关

    1,Orange网关 Orange是一个基于OpenResty的API网关.除Nginx的基本功能外,它还可用于API监控.访问控制(鉴权.WAF).流量筛选.访问限速.AB测试.动态分流等.它有以下 ...

  2. PHP搞笑注释代码-佛祖配美女

    //////////////////////////////////////////////////////////////////// // _ooOoo_ // // o8888888o // / ...

  3. linux第七章读书笔记

    Vim编辑器 Vim 仅仅通过键盘来在插入和执行命令等多种模式之间切换.这使得Vim可以不用进行菜单或者鼠标操作,并且最小化组合键的操作,对文字录入员或者程序员可以大大增强速度和效率. CHAPTER ...

  4. 20145311 《Java程序设计》第十周学习总结

    20145311 <Java程序设计>第十周学习总结 教材学习内容总结 网络编程 ·网络编程就是在两个或两个以上的设备(例如计算机)之间传输数据·程序员所作的事情就是把数据发送到指定的位置 ...

  5. ngular6开发不完全笔记(二)-- 管道

    自定义管道 管道(过滤器)为过滤数据显示下列list数据 pip.ts 文件 import { Pipe, PipeTransform } from '@angular/core'; import { ...

  6. AOP AspectJ注解

    概念: 切面(aspect):用来切插业务方法的类.连接点(joinpoint):是切面类和业务类的连接点,其实就是封装了业务方法的一些基本属性,作为通知的参数来解析.通知(advice):在切面类中 ...

  7. Codeforces Round #526 (Div. 1)

    毕竟是上紫之后的第一场div1,还是太菜了啊,看来我要滚回去打div2了. A. The Fair Nut and the Best Path 这题本来是傻逼贪心dfs,结果我越写越麻烦,然后就只有1 ...

  8. 【转载】Java关键字之"transient"

    原文出处:http://blog.csdn.net/lanxuezaipiao/article/details/16358677 transient的作用及使用方法 我们都知道一个对象只要实现了Ser ...

  9. ImportError: cannot import name 'izip & TypeError: 'float' object cannot be interpreted as an integer

    ImportError: cannot import name 'izip' 参考:https://codereview.stackexchange.com/questions/26271/impor ...

  10. 【Python初学者】准备

    准备着手学习Python这门久仰大名的语言.本篇随笔是学习它的准备阶段. 操作系统: Mac OS 10.11.5 下载编辑器Testwrangler 点我 第一个Python程序 在命令行中运行py ...