jenkins+svn+maven自动化打包部署

一.前提:

公司内部目前都是手工打包上传,这样效率比较低,于是想通过jenkins+svn+maven希望能够实现自动化打包部署,当然这只是jenkins强大功能中的一小部分。

二.安装:

本文档jenkins采用war包的安装方式。

1.安装jdk,tomcat环境

jdk安装可参考之前的博客https://www.jianshu.com/p/1b2b00ceef88

tomcat安装

https://tomcat.apache.org/download-90.cgi
注意不要下错安装包哦

tomcat install包
-bash-4.2$tar -xzf apache-maven-3.3.9-bin.tar.gz
#需要修改环境变量,普通用户在 .bash_profile下:
-bash-4.2$cat .bash_profile
JAVA_HOME=/usr/java/jdk1.8.0_201
CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export PATH=$JAVA_HOME/bin:$PATH
export CATALINA_HOME=/tomcat/apache-tomcat-9.0.17
-bash-4.2$source .bash_profile
2.安装jenkins
-bash-4.2$ wget http://mirrors.jenkins.io/war-stable/latest/jenkins.war
-bash-4.2$ cp jenkins.war /tomcat/apache-tomcat-9.0.17/webapps/
-bash-4.2$ ./tomcat/apache-tomcat-9.0.17/bin/startup.sh

登录web界面进行相关配置


image.png

根据提示去相应目录下找密码


image.png

然后选择安装插件
image.png

安装完成后安装相应的插件


image.png

选择可选插件,右边搜索框中搜索
image.png

需要安装的插件:
Maven Integration plugin,Publish Over SSH,SVN Publisher plugin (如果安装失败,重启tomcat重新安装)
3.安装maven
-bash-4.2$ wget http://apache.fayea.com/maven/maven-3/3.3.9/binaries/apache-maven-3.3.9-bin.tar.gz
-bash-4.2$ tar zxf apache-maven-3.3.9-bin.tar.gz
配置环境变量
-bash-4.2$ cat .bash_profile
export MAVEN_HOME=/tomcat/maven-3.3.9
export PATH=$PATH:$MAVEN_HOME/bin
检测是否完成
-bash-4.2$ mvn -version

三.jenkins升级

运行一段时间后jenkins机器提示:


image.png

故对jenkins升级
因为是tomcat部署的jenkins升级时只需要替换最新的jenkin.war包即可,再重启tomcat即可

-bash-4.2$ pwd
/tomcat/apache-tomcat-9.0.17/webapps
替换jenkins.war为最新的war包
-bash-4.2$ ll
总用量 125320
drwxr-x--- 14 tomcat tomcat     4096 3月  25 10:53 docs
drwxr-x---  6 tomcat tomcat       83 3月  25 10:53 examples
drwxr-x---  5 tomcat tomcat       87 3月  25 10:53 host-manager
-rw-r--r--  1 tomcat tomcat 77335220 5月  22 09:40 jenkins.war
drwxr-x---  5 tomcat tomcat      103 3月  25 10:53 manager
drwxr-x---  3 tomcat tomcat      283 3月  25 10:53 ROOT
-bash-4.2$ cd ..
-bash-4.2$ sh bin/shutdown.sh 
Using CATALINA_BASE:   /tomcat/apache-tomcat-9.0.17
Using CATALINA_HOME:   /tomcat/apache-tomcat-9.0.17
Using CATALINA_TMPDIR: /tomcat/apache-tomcat-9.0.17/temp
Using JRE_HOME:        /usr/java/jdk1.8.0_201
Using CLASSPATH:       /tomcat/apache-tomcat-9.0.17/bin/bootstrap.jar:/tomcat/apache-tomcat-9.0.17/bin/tomcat-juli.jar
-bash-4.2$ sh bin/startup.sh 
Using CATALINA_BASE:   /tomcat/apache-tomcat-9.0.17
Using CATALINA_HOME:   /tomcat/apache-tomcat-9.0.17
Using CATALINA_TMPDIR: /tomcat/apache-tomcat-9.0.17/temp
Using JRE_HOME:        /usr/java/jdk1.8.0_201
Using CLASSPATH:       /tomcat/apache-tomcat-9.0.17/bin/bootstrap.jar:/tomcat/apache-tomcat-9.0.17/bin/tomcat-juli.jar
Tomcat started

四.配置jenkins

1.jenkins上配置maven
image.png

image.png
2.jenkins上配置ssh远程机器

将war包发送到远程主机,系统管理->系统设置,可配置密钥的也可以配置密码的,添加多个需要点击高级单独设置密码。


image.png
3.jenkins构建maven项目
image.png

填写项目名称后构建一个maven项目
配置代码库svn地址,注意这个url必须有访问权限。


image.png

注意添加权限认证,没有用户就创建一个

image.png

bu'ild这块的pom.xml是由开发提供的
image.png

构建后操作,将war包传送到服务器中
image.png

image.png

将war包发送到远程机器上,并执行相应的命令,*/.war
image.png

完成配置后点击保存,在首页可以看到刚刚创建的job
image.png

进入到项目中,点击立即构建
image.png

在执行的任务中点击控制台输出就可以看到job执行的过程
image.png

image.png

4.jdk配置

默认不配置使用的是/usr/bin/java,如果需要配置到系统管理->全局工具配置


image.png

后续

这样使用只能自动化部署war包,如果不想把整个项目打包而只是部分代码打包,如何操作呢?
根据公司内部环境,请参考我的下一篇文章

参考:

https://juejin.im/entry/5b5eb704e51d4519226f8871
https://www.jianshu.com/p/2cd132b0ce4c

你可能感兴趣的:(jenkins+svn+maven自动化打包部署)