使用jenkins流水线(Jenkinsfile)部署springboot项目

新建流水线任务

在这里插入图片描述

配置 webhook

说一下 webhook 的作用:使用 git 工具执行相应步骤的时候,例如拉取、推送等操作的时候会触发 webhook 函数,那么 jenkins 就会开始执行打包部署等操作。

配置 webhook 的方法在使用jenkins+gitee部署springboot项目中讲的非常清楚了,这里就不再过多赘述。

在构建触发器中勾选 Gitee webhook 触发构建

在这里插入图片描述

生成 Gitee WebHook 密码

在这里插入图片描述

把 Gitee WebHook 密码配置到 Gitee 上

在这里插入图片描述

配置流水线

在这里插入图片描述

编写 Jenkinsfile 文件

这个文件需要根据自己的情况进行修改

还可以参考流水线语法

pipeline {
    agent any

    tools{
        maven 'maven-3.8.4'
    }
    stages {
        stage('拉取代码') {
            steps {
              git credentialsId: 'fc58707b-7072-47c1-889c-7d612821726c', url: 'https://gitee.com/latemaple/test.git'
              echo '拉取成功'
            }
        }

        stage('执行构建') {
            steps {
              sh "mvn --version"
              sh "mvn clean package"
              echo '构建完成'
            }
        }

        stage('把jar包构建为docker镜像并运行') {
            steps {
                sh '''#!/bin/bash

                        # 源jar名称,mvn打包之后,target目录下的jar包名称
                        JAR_NAME=test-0.0.1-SNAPSHOT

                        # jenkins下的目录
                        JENKINS_HOME=/var/jenkins_home/workspace/test2


                        cd $JENKINS_HOME/target

                        cp $JENKINS_HOME/Dockerfile $JENKINS_HOME/target

                        # 修改文件权限  JAR_NAME
                        chmod 755 $JAR_NAME.jar


                        echo "停止容器"
                        docker stop test

                        echo "删除容器"
                        docker rm test

                        echo "删除镜像"
                        docker rmi test

                        echo "打包镜像"
                        docker build -t test .

                        echo "运行镜像"
                        docker run -d -p 8082:8082 --name test test
                '''
                echo '运行成功'
            }
        }
    }
}
Logo

技术共进,成长同行——讯飞AI开发者社区

更多推荐