jenkins+git+maven自动部署和发布

jenkins+git+maven自动部署和发布

前言:关于jenkins自动部署在前面也写过两篇博客,两篇的内容大概涵盖了jenkins的全局配置,项目配置、使用svn作为源码管理、构建war普通war包到tomcat以及构建和部署springboot项目,今天这边博客主要就是使用git作为源码管理、另外对前面两篇博客做查漏补缺的工作,相信通过这三篇博客没有基础的童鞋同样可以搭建起来各种项目。

前面两篇博客的地址如下:

jenkins+maven+svn自动部署和发布(超详细,图文并茂)

jenkins部署springboot项目jar包

接下来就直接进入正题,我尽量写的详细一点,但是为了篇幅,有些内容如果不清楚的需要自行查找资料

一、预备

1、Tomcat:用作跑jenkins.war,当然也可以安装jenkins

2、Maven:用于构建maven项目

3、Git:用于拉去gitlib的代码

4、Jdk:基础,maven、tomcat、jenkins都需要java环境

5、Jenkins.war包:放到tomcat中,然后访问

二、准备

1、jdk安装准备:

(1)直接去官网下载linux版本的jdk压缩包

(2)解压:tar指令

(3)配置环境变量(/etc/profile)

(4)刷新文件,source /etc/profile

(5)java -version检查

2、tomcat安装

(1)直接去官网下载linux版本的tomcat

(2)解压

(3)查看8080端口是否被占用,如占用则需要修改端口(/conf/server.xml),启动/bin/startup.sh启动,输入地址查看是否启动

3、maven安装准备

(1)下载压缩包

(2)解压

(3)配置环境变量

(4)刷新,source /etc/profile

(5)mvn -version查看是否安装好

4、jenkins准备

(1)去官网下载jenkins.war

(2)将下载的jenkins.war放入到tomcat的webapps中

(3)访问localhost:8080/jenkins(local host:8080对应服务器的ip和tomcat的端口)

5、Git安装

可以使用yum源安装、也可以使用源码安装

Yum源安装后的结构没有源码安装整齐,但yum源安装比较简单,因为源码安装需要安装依赖并且需要编译,这里简单介绍一下使用源码安装

(1)安装依赖:yum install curl-devel expat-devel gettext-devel openssl-devel zlib-devel gcc perl-ExtUtils-MakeMaker

(2)下载压缩包:wget https://github.com/git/git/archive/v2.3.0.zip

(3)解压:tar -zvxf ***(最好选择路径)

(4) 编译:make prefix=/usr/local/git all

                     Make prefix=/usr/local/git install

(5) 配置环境变量(和jdk一样)

(6)刷新:source /etc/profile

(7)git –version检查

上面步骤,如果有不清楚或者错误的可以直接查找资料或者下面留言,整体的步骤肯定如此

三、配置jenkins

1、略过登陆、设置管理员账号、默认推荐的插件下载…(因为你登陆进去,页面上就有相应的提示…)

2、配置jdk、maven、git(系统管理->全局工具配置)

(1)jdk

jenkins+git+maven自动部署和发布

(2)maven

jenkins+git+maven自动部署和发布

(3)git

jenkins+git+maven自动部署和发布

 上面配置完成就可以开始配置需要构建的项目了

四、配置构建项目

1、新建任务(maven项目)

jenkins+git+maven自动部署和发布

如果找不到“构建一个maven项目”需要安装Maven Interation plugin(系统管理->插件管理)

2、配置

配置可参考我以前的博客,里面也写的很详细,这里重点介绍一下使用git配置源码管理,以前的博客写的是使用svn

jenkins+git+maven自动部署和发布

 这里配置源码有两种方式:https协议、ssh协议,下面分别介绍

(1)使用https

jenkins+git+maven自动部署和发布

(2)使用ssh

Ssh比较麻烦一点,需要生成生成公钥和私钥,然后将公钥放到github的项目中,私钥配置成凭据,我们一个个来

1)生成公钥和私钥

配置下用户名和邮箱吧

git config –global user.name “用户名”

git config –global user.email “邮箱”

使用git config -l看看是否配成功

ssh-keygen -C -t rsa “邮箱”

然后一直回车就好了,就会在制定的文件下生成公钥和私钥

 jenkins+git+maven自动部署和发布

2)将公钥放到github中

jenkins+git+maven自动部署和发布

3)将私钥配置成凭据(凭据->系统->全局凭据->添加凭据)

jenkins+git+maven自动部署和发布

 4)源码配置

jenkins+git+maven自动部署和发布

 到了,到上面如果不报红色错误的话,就没问题了,其他的就参考前面两篇博客吧,相信大家都能搭建起来的,因为我一开始也完全不懂,同样搭建成功了!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/111223.html原文链接:https://javaforall.net

赞 (0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • otn与stn网络_mstp和stn的区别

    otn与stn网络_mstp和stn的区别SDH、MSTP、OTN和PTN的区别和联系看了很多人写的关于SDH、PTN和O…SDH、MSTP、OTN和PTN的区别和联系_信息与通信_工程科技_专业资料。首…SDH与MSTP_信息与通信_工程科技_专业资料。一、判断题(共5道小题,共50.0分)1.以字节交错间插方式构成高阶STM-N(N>1)段开销时,第一个STM-1……MSTP、SDH+ATM、OT…

    2022年10月18日
  • 关于iPhone尺寸与分辨率[通俗易懂]

    浅谈不同型号iPhone的尺寸与不同的分辨率首先谈谈编者对分辨率这个概念的认知,分辨率与清晰度挂钩,同样尺寸的视图,分辨率越高清晰度越好。另外还要引出一个重要的概念:PPI(pixelsperinch)PPI是图像分辨率的单位,图像PPI值越高,画面的细节就越丰富,因为单位面积的像素数量越多,一般PPI>300人眼难以分辨出来。分辨率分为水平和垂直两种,

    2022年4月17日
  • 线性代数代码实现(六)矩阵除法(C++)

    线性代数代码实现(六)矩阵除法(C++)前言:距离上一篇文章发布已经五天过去了,在这里先给一直等待的伙伴们说声抱歉,因为博主最近的事情很多,只好暂时停更,望大家理解!上一篇文章中,我们介绍了求解逆矩阵的方法,我提到,可逆矩阵可以定义除法。这一篇文章中,讨论一下怎样实现矩阵除法!一、线性代数知识回顾:事实上,矩阵没有“除法”这一概念,我们的“除法”实际上是用以下方式来定义的:设矩阵,,,其中为可逆矩阵,满足以下等式:变换得:如果我们换一种写法,就成了:这样就定义了矩阵除法,我把它称…

    2022年6月18日
  • Python基础 知识点总结[通俗易懂]

    Python基础 知识点总结[通俗易懂]python入门、基础知识

    2022年10月9日
  • css鼠标禁用[通俗易懂]

    css鼠标禁用[通俗易懂]#1.鼠标的悬浮样式:cursordiv:hover{cursor:not-allowed;/*光标是一个红色的圈加一个斜杠)*/}1、default默认光标(通常是一个箭头)2、auto默认。浏览器设置的光标。3、crosshair光标呈现为十字线。4、pointer光标呈现为指示链接的指针(-只手)5、move此光标指示某对象可被移动。6、e-resize此光标指示矩形框的边缘可被向右(东)移动。7、ne-resize此光标指示矩形

    2022年5月10日

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号