Jenkins:
Jenkins是一个功能强大的应用程序,允许持续集成和持续交付项目,无论用的是什么平台。这是一个免费的源代码,可以处理任何类型的构建或持续集成。集成Jenkins可以用于一些测试和部署技术。Jenkins是一种软件允许持续集成。
本次演示环境为centos7.0,其他环境不做介绍
教程开始:

项目创建和git仓库创建

- 我们现在本地创建maven项目

Jenkins 发布java 微服务 jenkins部署web项目_git


首页为hello jenkins

- 在git上创建仓库,拉取master分支

Jenkins 发布java 微服务 jenkins部署web项目_git_02


拉取代码到本地

Jenkins 发布java 微服务 jenkins部署web项目_maven_03

  • 将在创建的项目代码放到拉取的文件中
  • Jenkins 发布java 微服务 jenkins部署web项目_Jenkins 发布java 微服务_04

  • 提交代码并推送到远程仓库(前提是保证自己的本地git已经关联到远程,有疑问可查看
  • Jenkins 发布java 微服务 jenkins部署web项目_git_05

Jenkins环境搭建
- 部署Tomcat,Jenkins为java项目,需要jdk和Tomcat的环境,有疑问可查看
Linux下jdk环境搭建,,Tomcat

wget https://mirrors.tuna.tsinghua.edu.cn/jenkins/war-stable/2.121.3/jenkins.war -P /usr/local/tomcat2/apache-tomcat-8.5.32/webapps/

我在这里将Jenkins的war包直接下载到我部署的第二台Tomcat的webapps下

访问我们的Jenkins项目http://43.226.35.137:8081/jenkins/

Jenkins 发布java 微服务 jenkins部署web项目_maven_06


看到Jenkins提示我们输入密码,根据提示

cat /root/.jenkins/secrets/initialAdminPassword

复制秘钥出来输入并确认

Jenkins 发布java 微服务 jenkins部署web项目_maven_07


点击选择插件安装

Jenkins 发布java 微服务 jenkins部署web项目_git_08


勾选建议,再自己实际项目需要的插件勾选

点击安装

Jenkins 发布java 微服务 jenkins部署web项目_maven_09


这个安装的时间比较久,受服务器网络和性能等因素影响

Jenkins 发布java 微服务 jenkins部署web项目_git_10


很多情况下,部分插件会安装失败,打开首页点击系统管理的时候会报很多错,提示缺少有些依赖,这个时候我们可以选择手动进行安装。

Jenkins的插件下载地址:

http://updates.jenkins-ci.org/download/plugins/

根据页面的提示下载需要的插件

安装插件:打开系统设置,插件管理,选择高级,在下边的安装插件哪里选择自己下载的插件进行安装

Jenkins 发布java 微服务 jenkins部署web项目_git_11


Jenkins 发布java 微服务 jenkins部署web项目_git_12


安装完后回到首页发现已经不报错了。安装maven插件(在这之前确保自己服务器已经安装了maven)

在插件管理里面选择Maven Integration直接安装

Jenkins 发布java 微服务 jenkins部署web项目_Jenkins_13

服务器配置安装maven

wget http://mirrors.tuna.tsinghua.edu.cn/apache/maven/maven-3/3.5.4/binaries/apache-maven-3.5.4-bin.tar.gz -p /user/local/maven

如果搭建的centos通过wget下载资源很慢的话可以设置国内的镜像地址,我设置的是163的镜像地址
解压文件

tar xvf apache-maven-3.5.4-bin.tar.gz

创建软连接

ln -s apache-maven-3.5.4 maven

配置环境变量

vi /etc/profile
在末尾添加
export M2_HOME=/usr/local/maven/maven
export PATH=$PATH:$M2_HOME/bin

退出并输入mvn -version验证是否安装成功

Jenkins 发布java 微服务 jenkins部署web项目_Jenkins 发布java 微服务_14


jdk配置

Jenkins 发布java 微服务 jenkins部署web项目_Jenkins_15


git配置

git已经加入到usr/bin下所以直接写git即可

Jenkins 发布java 微服务 jenkins部署web项目_Jenkins 发布java 微服务_16


Jenkins 发布java 微服务 jenkins部署web项目_maven_17


maven配置

Jenkins 发布java 微服务 jenkins部署web项目_Jenkins_18


点击保存,进入系统设置

在最下边点击增加ssh server

Jenkins 发布java 微服务 jenkins部署web项目_git_19


填写相关信息后点击test connection

Jenkins 发布java 微服务 jenkins部署web项目_Jenkins 发布java 微服务_20


经过测试连接正常,点击保存。

  • Jenkins全局参数配置
  • maven配置

基础环境已经构建完成,现在我们就对已经上传到git的项目使用Jenkins进行构建并发布

使用Jenkins进行项目构建

  • 新建任务


    选择maven项目
    确定之后会发现有很多配置的地方,本次演示只配置部分需要的配置
  • 保留历史构建个数

    点击add选择Jenkins

    输入git的账号和密码

    注意:很多同学在这里输入的ssh的地址,然后返回后发现无法找到仓库,换成HTTPS的地址时正确


    使用HTTPS地址后正确

    在这里我们基于master进行构建,搭建如果想在构建的时候可以选择分支进行构建,可以设置参数化构建过程

maven构建配置

Clean package –DskipTest=true

Jenkins 发布java 微服务 jenkins部署web项目_Jenkins 发布java 微服务_21


配置构建后的操作

Jenkins 发布java 微服务 jenkins部署web项目_Jenkins 发布java 微服务_22


注意:deployer账号需要在Tomcat下的conf文件中的Tomcat-user.xml中配置,如下:

<user username="deployer" password="deployer" roles="manager-gui,manager-script,admin" />

如果是远程部署的话还需要注释掉META_INF/context.xml中的有一段代码,如下

Jenkins 发布java 微服务 jenkins部署web项目_git_23

保存配置后进行项目构建

Jenkins 发布java 微服务 jenkins部署web项目_Jenkins 发布java 微服务_24


注意:

在进行项目构建的时候会经常遇到一个问题就是 Maven JVM terminated这个问题

Jenkins 发布java 微服务 jenkins部署web项目_Jenkins_25


解析参考:https://stackoverflow.com/questions/24989653/jenkins-maven-build-137-error?noredirect=1

低配的机器会经常出现这个问题,将其他进程关闭掉然后执行发现正常了

Jenkins 发布java 微服务 jenkins部署web项目_Jenkins_26


访问项目

Jenkins 发布java 微服务 jenkins部署web项目_Jenkins_27