Jenkins+MVN+Tomcat+Centos实现自动化部署

简介:

        运维最大的悲剧就是熬夜跟着开发 进行线上部署调试bug,这是我最不想看到的,不过最近老大研究除了一个很好的东西,虽然是烂大街的东西,但是解决了我最容易加班的事情,下面就来说说搭建的具体流程,与大家共勉:

1.系统环境介绍

# 系统版本
root@dubboadmin:~# cat /etc/issue
Ubuntu 14.04.3 LTS \n \l
#jdk版本,jdk版本和tomcat 的版本一定要按照教程使用,因为这东西对版本要求挺严格的,不然起不来
root@dubboadmin:~# java -version
java version "1.7.0_21"
Java(TM) SE Runtime Environment (build 1.7.0_21-b11)
Java HotSpot(TM) 64-Bit Server VM (build 23.21-b01, mixed mode)
# 系统jdk是上面那个版本1.7.0_21,但是我们我们jenkins所在的tomcat并非1.7,使用的是1.8,具体修改如下
root@dubboadmin:/opt/tomcat-7.0.77/jenkins-web/bin# pwd
/opt/tomcat-7.0.77/jenkins-web/bin
root@dubboadmin:/opt/tomcat-7.0.77/jenkins-web/bin# vim setclasspath.sh 
# 在这个文件的开头加上这两句话
JRE_HOME=/opt/jdk1.8.0_144/jre
JAVA_HOME=/opt/jdk1.8.0_144/
# tomcat版本
root@dubboadmin:/opt/tomcat-7.0.77/jenkins-web/bin# ./version.sh 
Using CATALINA_BASE:   /opt/tomcat-7.0.77/jenkins-web
Using CATALINA_HOME:   /opt/tomcat-7.0.77/jenkins-web
Using CATALINA_TMPDIR: /opt/tomcat-7.0.77/jenkins-web/temp
Using JRE_HOME:       /opt/jdk1.8.0_144/jre
Server version: Apache Tomcat/6.0.1
Server built:   @VERSION_BUILT@
Server number:  @VERSION_NUMBER@
OS Name:        Linux
OS Version:     3.19.0-25-generic
Architecture:   amd64
JVM Version:    1.8.0_144-b01
JVM Vendor:     Oracle Corporation
# 使用的是maven环境,所以需要下载jar,我们的jar包都放在了artifactory,需要的jar都去那里下载
所以要确保这个机器和artifactory在物理连接上是通的,修改hosts
192.168.1.191   artifactory.test.com

2.安装maven

 下载地址在博客后文有附件

  安装很简单,找个地方解决过来之后,修改环境变量

root@dubboadmin:/opt# cat /etc/profile
    ........    ........
export M2_HOME=/opt/maven-je/maven
export PATH=$M2_HOME/bin:$PATH
# 执行source 使文件立即生效
root@dubboadmin:/opt# source  /etc/profile
# 使用mv tab 可以看到maven的执行命令
root@dubboadmin:/opt# mv
mv            mvn           mvn.bat       mvnDebug      mvnDebug.bat

3.安装svn工具

apt-get install subversion

4.安装jenkins

去jenkins官网下载相应版本,小编使用的是vjenkins2.79

官网地址:https://jenkins.io/download/

把下载好的war包放到tomcat下就可以了,然后启动tomcat,在浏览器里面访问就可以了

5.安装jenkins插件

Maven Integration plugin
Subversion Plug-in
Publish Over SSH

安装过程如下:

wKioL1nLUDqT_ZQhAABYRI9KNs0745.png

wKioL1nLUDviTc43AAHW2RmeAjU585.png

wKiom1nLUHqB4F-oAACSQRynm64931.png

依次点击:系统管理---管理插件---可选插件---输入想要安装的插件---勾选搜索后的想要安装的插件----点击直接安装

注意:同时会有其他依赖的插件安装,若有安装失败的就去http://updates.jenkins-ci.org/download/plugins下载后在“高级”那里上传上来即可;


所有插件安装完成后重启jenkins服务,直接重启tomcat即可

6.配置

6.1 配置jdk和maven环境

wKioL1nLUweyLGTnAAHTULC61PA763.png

wKiom1nLU0aigvcAAADdj9xcY0I351.png

依次点击:系统管理---Global Tool Configuration---如实填写你的maven和jdk的路径

6.2添加主机

  a.配置jenkins和需要部署项目的机器之间互信

首先需要配置Jenkins所在Linux到部署Linux的免密登录,假设两者ip分别为192.168.1.111和112,则在111上执行命令:

(命令1有交互按自己的需求填写,简单的就全部直接回车)

(命令2需要输入112的root密码)

# ssh-keygen -t rsa
# ssh-copy-id -i ~/.ssh/id_rsa.pub root@192.168.1.112

   b.添加需要部署项目的主机

wKiom1nLVFfi84_oAAHBCQeyU8g970.png

在最下面输入对方的主机ip、用户、以及目录(这个目录是要把代码传到那个目录下的目录)

wKioL1nLVaayMyiYAAAzXtbCmHY511.png6.3 创建一个job

wKiom1nLV8Whpi0WAABWnVlN1PE696.png

wKioL1nLV4fQ4qldAACQ9nTyCDQ929.png

wKioL1nLV7Xxu5WjAABEeDSRNos868.pngwKioL1nLWALgv_6_AAA1iywzAYY341.pngwKiom1nLWEuBtWg4AAAcW1LgYzs030.pngwKioL1nLWVnAMpDPAAFCe4ZpioY897.png6.4 部署项目

wKioL1nLWn7wAu6KAAELi5MyU0I151.png

wKiom1nLWr2wNXX1AABTk2GlUVY403.png

点击构建状态,可以看构建日志

wKioL1nLWrSy4JslAAAw0epT3UA158.png


wKioL1nLWxXC2HOVAABkSM-ctvs875.png



说说那几个路径的区别:

wKiom1nLYNGQcDHVAAASCqW9k0g135.png

wKiom1nLYNmSOXVoAADnszG2d5o434.png

wKiom1nLYKWijZfuAAARbBajLE8502.png

wKioL1nLYGbSHjNbAAAQtRsb5Fo393.png

wKioL1nLYPLBhx4BAAASrLks4vI575.png

wKiom1nLYKXDMhqFAAASzdEK1gk681.png

至此,jenkins部署全部结束










本文转自 xinsir999 51CTO博客,原文链接:http://blog.51cto.com/xinsir/1969200,如需转载请自行联系原作者
目录
相关文章
|
2月前
|
Linux 开发工具 数据安全/隐私保护
Centos7:自动化配置vim | suoders信任列表添加普通用户
Centos7:自动化配置vim | suoders信任列表添加普通用户
35 0
|
2月前
|
前端开发 jenkins 持续交付
新的centos7.9安装docker版本的jenkins2.436.1最新版本-前端项目发布(五)
新的centos7.9安装docker版本的jenkins2.436.1最新版本-前端项目发布(五)
83 1
|
13天前
|
jenkins Java 持续交付
运用Jenkins实现Java项目的持续集成与自动化部署
在新建的Jenkins Job中,我们需要配置源码管理,通常选择Git、SVN等版本控制系统,并填入仓库地址和凭据。接着,设置构建触发器,如定时构建、轮询SCM变更、GitHub Webhook等方式,以便在代码提交后自动触发构建过程。
39 2
|
2月前
|
jenkins 网络安全 持续交付
新的centos7.9安装docker版本的jenkins2.436.1最新版本-后端项目发布(四)
新的centos7.9安装docker版本的jenkins2.436.1最新版本-后端项目发布(四)
70 3
|
12天前
|
Java jenkins 持续交付
Jenkins是开源CI/CD工具,用于自动化Java项目构建、测试和部署。通过配置源码管理、构建触发器、执行Maven目标,实现代码提交即触发构建和测试
【7月更文挑战第1天】Jenkins是开源CI/CD工具,用于自动化Java项目构建、测试和部署。通过配置源码管理、构建触发器、执行Maven目标,实现代码提交即触发构建和测试。成功后,Jenkins执行部署任务,发布到服务器或云环境。使用Jenkins能提升效率,保证软件质量,加速上线,并需维护其稳定运行。
49 0
|
1月前
|
jenkins Java 持续交付
|
2月前
|
Java 开发工具 git
新的centos7.9安装docker版本的jenkins2.436.1最新版本-项目发布(三)
新的centos7.9安装docker版本的jenkins2.436.1最新版本-项目发布(三)
45 4
|
2月前
|
Oracle jenkins 持续交付
新的centos7.9安装jenkins(二)
新的centos7.9安装jenkins(二)
31 1
|
2月前
|
关系型数据库 MySQL 应用服务中间件
centos7在线安装jdk1.8+tomcat+mysql8+nginx+docker
现在,你已经成功在CentOS 7上安装了JDK 1.8、Tomcat、MySQL 8、Nginx和Docker。你可以根据需要配置和使用这些服务。请注意,安装和配置这些服务的详细设置取决于你的具体需求。
218 2
|
2月前
|
jenkins Java 持续交付
Jenkins 快速入门 (含Jenkins + Docker + Git 简单的自动化实操)(上)
Jenkins 快速入门 (含Jenkins + Docker + Git 简单的自动化实操)