Github + Git + Maven + tomcat + Jenkins的可持续集成部署

版权声明:本文为博主原创文章,转载请注明出处:http://blog.csdn.net/liudongdong0909。 https://blog.csdn.net/liudongdong0909/article/details/77952109

记得15年的时候就开始用jenkins了,那时候老大讲的时候自己傻傻的不懂。。。现在自己在看基础的时候就自己玩玩,眼里过千遍不如手里过一遍。总结一下,看了好多博客,做下来都是有错误的,索性自己写一个,边做边写,就当是个笔记记录一下。计划后面还要使用 结合docker和 shell 脚本。做的更好一些。

一、环境准备

软件 版本 安装路径
vmware 12
centos CentOS-6.8-x86_64-minimal.iso
jdk 1.8 /usr/local/jdk1.8.0_131
git 2.6.0 /usr/local/git
maven 3.3.9 /usr/local/apache-maven-3.3.9
tomcat 7 /usr/local/tomcat-8090


这里写图片描述

二、安装JDK

  1. 解压jdk
[root@localhost ~]# tar -zxvf jdk-8u131-linux-x64.tar.gz  -C /usr/local/

2.配置 /etc/profile,最后面添加一下内容:

export JAVA_HOME=/usr/local/jdk1.8.0_131
export PATH=$PATH:$JAVA_HOME/bin

3.刷新

source /etc/profile

三.安装maven

1.解压maven

 [root@localhost ~]# tar -zxvf apache-maven-3.3.9-bin.tar.gz  -C /usr/local/

2.配置/etc/profile, 最后面添加以下内容:

export MAVEN_HOME=/usr/local/apache-maven-3.3.9
export PATH=$PATH:$MAVEN_HOME/bin

3.刷新

source /etc/profile

四、安装git

1.安装依赖包

yum install curl-devel expat-devel gettext-devel openssl-devel zlib-devel 
yum install  gcc perl-ExtUtils-MakeMaker

2.解压git

[root@localhost ~]# unzip git-2.6.0.zip 

3.新建git文件夹,/usr/local/git

[root@localhost local]# pwd
/usr/local
[root@localhost local]# 
[root@localhost local]# mkdir git

4.安装

[root@localhost ~]# cd git-2.6.0
#执行下面两句话
make prefix=/usr/local/git all
make prefix=/usr/local/git install

5.配置/etc/profile,最后面添加以下内容

export GIT_HOME=/usr/local/git
export PATH=$PATH:$GIT_HOME/bin

6.刷新

source /etc/profile

7.检查

git --version

五、安装jenkins

因为jenkins内置jetty,所以简单粗暴就可以。

[root@localhost ~]# java -jar jenkins.war 

安装之后的位置:Jenkins home directory: /root/.jenkins found at: $user.home/.jenkins

记录初始密码:
这里写图片描述

如果没有记录下来,就去安装之后的位置下去找,因为后面的初始化登录需要用到

六、登录、安装两个非常重要的插件

第一步:初次登录,使用初始化密码

这里写图片描述

第二步:安装推荐的必要插件

这个工程非常的缓慢,可以登录成功之后,自己再去手动找。
等待时间较久。。。。。。

这里写图片描述

这里写图片描述

所有执行完成之后登陆进入:
这里写图片描述

第三步: 安装两个非常非常非常重要的插件

安装两个重要插件:
1、Maven Integration plugin(默认没有maven项目,增加这个就有了)
2、Deploy to container Plugin(部署后自动放tomcat里面)
这里写图片描述

这里写图片描述

这里写图片描述

七、环境配置

选择: 系统管理 -> Global Tool Configuration

这里写图片描述

第一步、配置jdk

这里写图片描述

第二步、配置maven

配置maven configuration
这里写图片描述

配置maven
这里写图片描述

第三步、 配置git

这里写图片描述

八、新建一个任务

先看一下我GitHub中的项目:一个多模块的聚合工程

ecps
├── ecps-api -> war
├── ecps-common -> jar
├── ecps-manager -> pom
│ ├── ecps-manager-mapper -> jar
│ ├── ecps-manager-model -> jar
│ ├── ecps-manager-service -> jar
│ ├── ecps-manager-web -> war
├── ecps-parent -> pom
├── ecps-portal -> zip
├── ecps-ssm -> war
└── readme.md

这里只选取其中的 ecps-ssm做一个构建任务

这里写图片描述

第一步、选择 -> 新建

<注意:> 如果这里没有maven项目的选项,就是上面两个很重要的插件没有安装或者安装失败

这里写图片描述

第二步、填写基础信息

这里写图片描述

第三步、 配置源码信息

这里写图片描述

第四步、配置构建触发器

这里写图片描述

第五步、配置build

这里写图片描述

第六步、配置构建后的操作

这里写图片描述

这里写图片描述

对于第五步和第六步的配置不理解的,可以看最后面的jenkins结构说明。

第七步、配置tomcat热部署

修改 tomcat-users.xml文件:
这里写图片描述

这里写图片描述

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

九、开启构建任务

做完以上几步操作保存之后,在首页就可以看到刚才构建的新任务,点击开始构建即可,jenkins就会拉去GitHub上的代码进行打包构建,并部署到tomcat中。
这里写图片描述

这里写图片描述

这里写图片描述

十、访问

这里写图片描述

十一、jenkins中结构

可能我们对于刚才第五步和第六步中相关的配置不胜明了,这里就解释一下。
我们先看一下 .jenkins中的结构
这里写图片描述

[root@localhost .jenkins]# 
[root@localhost .jenkins]# pwd
/root/.jenkins 
[root@localhost .jenkins]# tree -L 1
.
├── cache
├── config.xml
├── credentials.xml
├── fingerprints
├── hudson.model.UpdateCenter.xml
├── hudson.plugins.deploy.DeployPublisher.Migrator
├── hudson.plugins.emailext.ExtendedEmailPublisher.xml
├── hudson.plugins.git.GitTool.xml
├── hudson.plugins.gradle.Gradle.xml
├── hudson.tasks.Ant.xml
├── hudson.tasks.Maven.xml
├── identity.key.enc
├── jenkins.CLI.xml
├── jenkins.install.InstallUtil.installingPlugins
├── jenkins.install.InstallUtil.lastExecVersion
├── jenkins.install.UpgradeWizard.state
├── jenkins.mvn.GlobalMavenConfig.xml
├── jobs
├── logs
├── nodeMonitors.xml
├── nodes
├── org.jenkinsci.plugins.docker.commons.tools.DockerTool.xml
├── org.jenkinsci.plugins.gitclient.JGitApacheTool.xml
├── org.jenkinsci.plugins.gitclient.JGitTool.xml
├── plugins
├── queue.xml.bak
├── secret.key
├── secret.key.not-so-secret
├── secrets
├── updates
├── userContent
├── users
├── war
├── workflow-libs
└── workspace

14 directories, 21 files
[root@localhost .jenkins]# 

secrets : 里面存储初始化密码
workspace: 下面就是构建任务

再进一步看看workspace 里面的内容: test 就是我构建的任务的名称
这里写图片描述

还有对第六步的 : context path 配置什么不明白,请看:

1) / : 代表我部署到tomcat -> webapps -> ROOT.war, 访问的时候不用带项目名, 就是上面的那种访问路径。
这里写图片描述

2) 如果你配置成其他的,比如: ecps-ssm, 代表部署到 tomcat -> webapps -> ecps-ssm.war, 解压之后存在一个 ecps-ssm的目录,访问的时候是需要带上ecps-ssm这个名称的。
这里写图片描述

这里写图片描述

这里写图片描述

以上就是全文的内容,由于水平有限,文章中难免会有错误,希望大家指正。谢谢~

猜你喜欢

转载自blog.csdn.net/liudongdong0909/article/details/77952109