一、搭建环境说明

如下,共有两台centos服务器,
centos1上做git代码管理、maven代码打包。
centos2上做war部署。

1、centos1:下称jenkins服务器

1.1、安装jdk1.8

1.2、安装git2.27.0,可选安装,非必要,这里是用于做项目代码管理

1.3、安装gogs0.12.3,可选安装,非必要,这里是用于做项目代码管理

1.4、配置gogs连接mysql5.7数据库,可选安装,非必要,这里是用于做项目代码管理

1.5、安装maven3.8.3

1.6、安装jenkins2.303.2 LTS(稳定版)

jdk的安装自行解决。
git和gogs是非必要的安装,这里只是为了方便提供一个git进行代码管理,如果你已经有git代码管理环境了这里是不需要安装的,如果没有可以参照前面git专栏上的详细安装记录,或者用github上的也可以。
maven的安装在maven专栏上也有详细的安装记录,可自行参考配置好这些基础的系统环境。

2、centos2:用于部署api与web,下称tomcat8服务器

2.1、安装jdk1.8

2.2、安装tomcat8.5.72

因为tomcat8的安装需要配置一下管理账号和密码,下面记录一下安装与配置过程。

二、tomcat8服务器安装

1、安装tomcat8

官网地址:http://tomcat.apache.org/
image.png
cd /usr/local/tomcat
wget https://dlcdn.apache.org/tomcat/tomcat-8/v8.5.72/bin/apache-tomcat-8.5.72.tar.gz
tar -zxvf apache-tomcat-8.5.72.tar.gz 解压

2、添加管理员账号密码:

2.1、在conf/Catalina/localhost/下创建 manager.xml,输入以下内容

docBase=”${catalina.home}/webapps/manager”>

2.2、修改/conf/tomcat-users.xml文件,在tomcat-users标签中添加如下内容:

xmlns:xsi=”http://www.w3.org/2001/XMLSchema-instance
xsi:schemaLocation=”http://tomcat.apache.org/xml tomcat-users.xsd”
version=”1.0”>




2.3、停止tomcat8服务

cd apache-tomcat-8.5.72/bin
./shutdown.sh

3、启动tomcat8服务

cd apache-tomcat-8.5.72/bin
./startup.sh 启动tomcat
http://localhost:8080/ 访问tomcat面板

三、创建一个简单的测试工程

1、在gogs上创建一个springboot-test工程项目

image.png

2、往工程项目里写一个简单的测试工程,修改好代码后提交到git上

image.png

3、注意代码里打包成war包,工程相关配置如下:

image.png

  1. #port
  2. server.port= 1001
  3. server.servlet.context-path= /test11
  1. <packaging>war</packaging>
  2. <dependencies>
  3. <dependency>
  4. <groupId>org.springframework.boot</groupId>
  5. <artifactId>spring-boot-starter-web</artifactId>
  6. <version>2.3.9.RELEASE</version>
  7. </dependency>
  8. <dependency>
  9. <groupId>org.springframework.boot</groupId>
  10. <artifactId>spring-boot-starter-tomcat</artifactId>
  11. <version>2.3.9.RELEASE</version>
  12. <scope>provided</scope>
  13. </dependency>
  14. </dependencies>
  15. <build>
  16. <!-- 应与application.properties(或application.yml)中context-path保持一致 -->
  17. <finalName>test11</finalName>
  18. <plugins>
  19. <plugin>
  20. <groupId>org.springframework.boot</groupId>
  21. <artifactId>spring-boot-maven-plugin</artifactId>
  22. </plugin>
  23. </plugins>
  24. </build>

web.xml

  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  3. xmlns="http://java.sun.com/xml/ns/javaee"
  4. xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
  5. xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" id="WebApp_ID"
  6. version="2.5">
  7. <welcome-file-list>
  8. <welcome-file>index.html</welcome-file>
  9. </welcome-file-list>
  10. </web-app>

index.html

  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <meta charset="UTF-8">
  5. <title>hi java web</title>
  6. </head>
  7. <body>
  8. hi java web
  9. </body>
  10. </html>

启动类:

  1. @SpringBootApplication
  2. public class AppStart extends SpringBootServletInitializer {
  3. public static void main(String[] args) {
  4. SpringApplication.run(AppStart.class, args);
  5. }
  6. /**
  7. * 需要把web项目打成war包部署到外部tomcat运行时需要改变启动方式
  8. */
  9. @Override
  10. protected SpringApplicationBuilder configure(SpringApplicationBuilder builder) {
  11. return builder.sources(AppStart.class);
  12. }
  13. }

接口类

  1. @RestController
  2. @RequestMapping(value = "data", produces = {"application/json;charset=UTF-8"})
  3. public class TestController {
  4. @GetMapping("test")
  5. public String test() {
  6. return "test";
  7. }
  8. }

四、安装jenkins

1、官网下载

https://www.jenkins.io/zh/download/

cd /usr/local/jenkins
wget http://mirrors.jenkins.io/war-stable/2.303.2/jenkins.war

2、启动jenkins,不指定—httpPort=3001的话,默认是8080端口

nohup java -jar jenkins.war —httpPort=3001 & 后台启动

3、打开管理界面,http://xxxx:3001,输入初始化的密码点继续

image.png

4、选择默认安装插件,如下:

image.png

5、创建第一个用户

image.png

6、在插件管理中安装额外的两个插件:Rebuilder、Safe Restart

image.png

7、全局jdk\git\maven设置

1、jdk设置

执行echo $JAVA_HOME可以找到java_home路径
image.png

2、git设置

执行which -a git可以找到git路径
image.png
git会从远程仓库上拉取代码到jenkins的workspace中,jenkins的workspace在安装启动时可以配置好。拉取代码到本地以后maven便会从本地的workspace中拿代码进行打包发布了。

3、maven设置

maven是自己安装并由自己指定的路径
image.png
image.png

五、jenkins构建任务

1、重启重新登录,新建一个Maven任务,如果面板上没有maven这个选项,安装Maven Integration插件即可

image.png

2、配置git代码源,源选择上面所创建的简单测试工程地址,并添加Credentials(git账号、密码)

image.png

3、配置maven构建环境

如果出现下图红色的文字提示则是因为还没有配置好全局maven设置,要在上面第七点配置好全局设置。
image.png

4、测试版本构建

image.png

5、构建打包结果

image.png

六、完整测试

1、构建发布后操作,将打包好的jar提交到另外一台tomcat8服务器上

添加构建后操作:Deploy war/ear to container 项目,
如果没有这个选项,那需要安装 Deploy to container插件,
image.png
添加好tomcat面板管理登录账号、密码
image.png
填写要提交的内容包、远程tomcat路径
image.png
查看打包发布日志是否成功:
image.png

在tomcat服务面板上查看一下是否有提交成功了:
image.png

2、接口测试

image.png
image.png

3、以后有新的代码版本需要发布的话我们在提交修改的代码之后再在面板上点一下构建即可完成更新发布了。

image.png