您当前的位置: 首页 >  Java

一一哥Sun

暂无认证

  • 3浏览

    0关注

    622博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

jenkins教程之04_Ubuntu下Jenkins实现java项目自动化部署教程

一一哥Sun 发布时间:2020-01-17 15:58:39 ,浏览量:3

04_Ubuntu下Jenkins实现java项目自动化部署教程 一. 创建Java项目

我们随便创建一个SpringBoot的web项目,进行jenkins的测试.

在本项目中配置了.gitignore忽略文件,把不必要的文件忽略掉,不用往git仓库中进行代码提交.

1. pom.xml文件内容

     org.springframework.boot
        spring-boot-starter-parent
        1.5.12.RELEASE
         
    

    
        UTF-8
        UTF-8
        UTF-8
        1.8
        1.8
        1.8
    

    
        
        
            org.springframework.boot
            spring-boot-starter-web
        
    

    
        
            
                org.springframework.boot
                spring-boot-maven-plugin
            
            
                maven-compiler-plugin
                
                    ${java.version}
                    ${java.version}
                    UTF-8
                
            
        
    
2. Controller内容
package com.syc.jenkins.web;

import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;

@RestController
public class HelloController {

    @GetMapping("/show")
    public String showInfo() {
        return "hello,this is jenkins demo";
    }

    @GetMapping("/hello")
    public String sayHello() {
        return "hello....";
    }

    @GetMapping("/new")
    public String newFeature() {
        return "new feature...";
    }

}

可以在本地运行启动一下该项目,简单进行测试,没问题就可以上传代码到git仓库中.

二. 提交代码到Gitlab中 1. 创建Gitlab项目

在gitlab中创建一个新项目,用作代码仓库.

然后把第一步中创建好的项目提交到Gitlab的仓库中.

具体过程略,提交代码的过程请参考本人的Git教程.

https://blog.csdn.net/syc000666/article/details/100921595

2. 配置jenkins与Gitlab的认证token

在"Jenkins"管理中进行"系统设置".

添加Jenkins配置.

选择Gitlab API token选项.

填写Gitlab中的Access Token内容.

可以去Gitlab中,选择自己的用户的头像,选择"Settings",然后选择"Access Tokens". 

然后可以点击"Test Connection",如果出现Success则表示Jenkins与Gitlab连接成功.

三. jenkins中新建Item 1. 创建一个新任务

 

2. 配置项目

配置和项⽬相关的内容,如源码,编译⽅式等.

继续向下拉

选择选择 maven maven 版本和执⾏的命令.

保存一下.

3. 构建测试

查看控制台,第⼀次可能会有⼤量的下载依赖包的过程,直到最后构建成功. 

进⼊Linux服务器中的/var/lib/jenkins/workspace/⽬录下, 可以看到以当前jenkins任务名字命名的⽬录,在⾥⾯就是我们的maven 项⽬项⽬.在target⽬录中可以找到我们编译后的jar包⽂件.

四. 部署发布项目到远程服务器,实现上线 1. 安装 Git Parameter 插件
在实际开发中,我们的CI(持续集成)⼀天内可能会有很多次,但是我们的CD(持续交付)在⼀段时间内可能只会有⼀次.
所以一般只有我们在发布版本的时候才会有CD,为了区分我们的版本,可以在git中使⽤ tag 来区分. 我
们每次发布之前先对代码添加 tag,这样我们就可以选择对应的 tag 来进⾏发布. jenkins可以通过读取我们的 gitlab 的 tag,进而让我们选择对应的tag,而要读取这个 tag 我们需
要⼀个插件.

2. 重新配置项⽬

添加参数化构建,和构建后发布到的远程服务器. 

3. 配置构建后发布

添加⼀个构建步骤,选择shell. 

参考脚本
echo $Tag
cd /var/lib/jenkins/workspace/myjinkins/
git checkout $Tag
git pull origin $Tag
/usr/local/apache-maven-3.6.3/bin/mvn clean package

因为使⽤了tag,所以需要重新切换tag,然后更新代码.

4. 添加构建后操作

配置发布参数 

参考脚本

#!/bin/bash
cp /var/lib/jenkins/workspace/myjinkins/target/*.jar /usr/local/jenkins-target/
cd /usr/local/jenkins-target
nohup java -jar ./*.jar &
echo 返回值:  $?
sleep 1

最后保存即可.

5. 部署上线项⽬ 5.1 在Gitlab上给我们的项目添加tag.

5.2 带参数构建项⽬.

  选择对应的版本后进⾏构建,进⼊本次构建的控制台.

最终看到构建结果.

5.3 访问⽬标服务器

打开浏览器,访问自己的项目地址,10.60.14.63:8080

可以看到我们的项目接口内容成功展示出来.

5.4 修改代码,再次测试

修改我们的项目代码,然后提交到Gitlab. 但是注意,此时我们之前的1.0 tag 中并没有我们 最新的内容, 作为新版本发布,我们需要新建⼀个 tag,然后选择新 tag 发布,此处略过提交代码和新建 tag 的过程. 我们新建了⼀个2.0tag,然后重新构建,发现发现2.0 2.0已经⾃动出现了.

构建完成重新在浏览器中访问服务器.

5.5 项目降级

当我们最新发布的版本出现问题的时候,可以重新选择低版本的tag发布,可以快速降,此处就不演示了.

 

关注
打赏
1665624836
查看更多评论
立即登录/注册

微信扫码登录

0.0549s