1 部署java项目-创建私有仓库

修改代码,打包,上传,重启... 大把的时间花费在这些重复无味的工作上。笔者与当前主流的价值观保持一致:我们应该把时间花费在更有意义的事情上。我们可以尝试借助一些工具,让这些重复机械的工作交给计算机去完成,这也是我们做软件开发的核心思想借用 Jenkins 持续集成重复工作是一个很不错的选择。--引用

jenkins部署

  • Jenkins是一个开源软件项目,旨在提供一个开放易用的软件平台,使软件的持续集成变成可能。
  • Jenkins是基于Java开发的一种持续集成工具,用于监控持续重复的工作,功能包括:
    1、持续的软件版本发布/测试项目。
    2、监控外部调用执行的工作。
  • Jenkins能做的东西有很多,不过本文只介绍一个简单的自动编译打包部署,首先下载Jenkins,推荐下载war包,https://jenkins.io/download/
  • 准备环境如下:
    1. 首先来创建一个私有仓库(之前我在做jenkins的discuz代码发布是有一个机器已经创建了一个私有仓库,我这就不重新创建了用chy02-192.168.212.12这个的私有仓库了)https://blog.51cto.com/chy940405/1984173 有需要的查看我的这篇文章里面有介绍怎么搭建git私有仓库
    2. git私有仓库搭建好后,需要一个java的源代码。zrlog就是用java编译的,我们直接下载它的源代码来做我们的试验。
  • chy01 -192.168.212.11 jenkins的服务端 chy02-192.168.212.12 私有仓库的机器

    
    [root@chy01 tmp]# cd sample/
    [root@chy01 sample]# ls
    1.txt  discz.html  sample
    [root@chy01 sample]# wget https://codeload.github.com/94fzb/zrlog/zip/master 
    --2017-11-24 05:05:34--  https://codeload.github.com/94fzb/zrlog/zip/master
    Resolving codeload.github.com (codeload.github.com)... 192.30.255.120, 192.30.255.121
    Connecting to codeload.github.com (codeload.github.com)|192.30.255.120|:443... connected.
    HTTP request sent, awaiting response... 200 OK
    Length: unspecified [application/zip]
    Saving to: ‘master’
    
    [         <=>                                                              ] 1,900,233    901KB/s   in 2.1s   

2017-11-24 05:05:37 (901 KB/s) - ‘master’ saved [1900233]

//下载zrlog的源码包
[root@chy01 sample]# unzip master 需要解压
[root@chy01 sample]# mv zrlog-master/* .
[root@chy01 sample]# git add --all
[root@chy01 sample]# git commit -m "add zrlog"
[root@chy01 sample]# git push
Counting objects: 446, done.
Compressing objects: 100% (417/417), done.
Writing objects: 100% (445/445), 3.39 MiB | 6.19 MiB/s, done.
Total 445 (delta 50), reused 0 (delta 0)
To [email protected]:/data/gitroot/sample.git
d22de14..03a39b2 master -> master

如上的准备工作已完成现在正式构建仓库  
在另外一台机器上(客户端)安装jdk + tomcat,其中jdk可以为openjdk,版本1.8  (在192.168.212.10安装jdk+tomcat)

[root@chy tomcat]# yum install -y java-1.8.0-openjdk
//安装jdk
[root@chy tomcat]# wget https://mirrors.tuna.tsinghua.edu.cn/apache/tomcat/tomcat-8/v8.5.23/bin/apache-tomcat-8.5.23.tar.gz 下载二进制包
[root@chy src]# tar zxvf apache-tomcat-8.5.23.tar.gz
apache-tomcat-8.5.23/conf/
[root@chy src]# mv apache-tomcat-8.5.23 /usr/local/tomcat
[root@chy tomcat]# vim /usr/local/tomcat/conf/tomcat-users.xml //配置管理入口,一定要配置。
//增加如下内容定义的是jenkins的用户与密码:








如上需要放在倒数第二行。
[root@chy tomcat]# /usr/local/tomcat/bin/startup.sh //启动
Using CATALINA_BASE: /usr/local/tomcat
Using CATALINA_HOME: /usr/local/tomcat
Using CATALINA_TMPDIR: /usr/local/tomcat/temp
Using JRE_HOME: /usr
Using CLASSPATH: /usr/local/tomcat/bin/bootstrap.jar:/usr/local/tomcat/bin/tomcat-juli.jar
Tomcat started.
[root@chy tomcat]# /usr/local/tomcat/bin/shutdown.sh //之后需要重启,先shutdown
Using CATALINA_BASE: /usr/local/tomcat
Using CATALINA_HOME: /usr/local/tomcat
Using CATALINA_TMPDIR: /usr/local/tomcat/temp
Using JRE_HOME: /usr
Using CLASSPATH: /usr/local/tomcat/bin/bootstrap.jar:/usr/local/tomcat/bin/tomcat-juli.jar
[root@chy tomcat]# /usr/local/tomcat/bin/startup.sh
Using CATALINA_BASE: /usr/local/tomcat
Using CATALINA_HOME: /usr/local/tomcat
Using CATALINA_TMPDIR: /usr/local/tomcat/temp
Using JRE_HOME: /usr
Using CLASSPATH: /usr/local/tomcat/bin/bootstrap.jar:/usr/local/tomcat/bin/tomcat-juli.jar
Tomcat started.

下面我们就需要去访问并进行下一步配置:

如下出现了403问题

解决方案:

[root@chy tomcat]# vim /usr/local/tomcat/webapps/manager/META-INF/context.xml

//这里要增加下ip的网段,支持正则匹配因为这里只允许了本地并没有允许其它的ip地址,其中我们的jenkins也要访问tomcat的所以这里就正则匹配全部就可以了。

再次重启 Tomcat 服务!

当我们再次刷新进入,就会看到如下界面:

这个就是我们未来需要让Jenkins 通过这个接口来更新我们开发好的war包!接下来安装war包

2安装maven

  • http://maven.apache.org/download.cgi 下载地址
  • 复制如下的链接到服务器中

    需要注意的是maven安装在jenkins的那台服务器上。
    [root@chy01 local]# wget http://mirrors.hust.edu.cn/apache/maven/maven-3/3.5.2/binaries/apache-maven-3.5.2-bin.tar.gz
    [root@chy01 local]# tar zxvf apache-maven-3.5.2-bin.tar.gz 
    [root@chy01 local]# ls apache-maven-3.5.2
    bin  boot  conf  lib  LICENSE  NOTICE  README.txt
    [root@chy01 local]# /usr/local/apache-maven-3.5.2/bin/mvn --version
    Apache Maven 3.5.2 (138edd61fd100ec658bfa2d307c43b76940a5d7d; 2017-10-18T15:58:13+08:00)
    Maven home: /usr/local/apache-maven-3.5.2
    Java version: 1.8.0_151, vendor: Oracle Corporation
    Java home: /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.151-1.b12.el7_4.x86_64/jre
    Default locale: en_US, platform encoding: UTF-8
    OS name: "linux", version: "3.10.0-514.el7.x86_64", arch: "amd64", family: "unix"

    安装好maven,接下来配置jenkins

  • jenkins -> 系统管理 -> 全局工具配置
    1

2下拉到Maven,Maven安装,Name(自定义,如maven3.5.2),MAVEN_HOME填 “/usr/local/apache-maven-3.5.2”

左下角“save”
至此,我们的基础搭建就搞定了!