jenkins 部署springboot 项目

文章目录

基于Jenkins拉取GitLab的SpringBoot代码进行构建发布到测试环境实现持续集成

基于Jenkins拉取GitLab指定发行版本的SpringBoot代码进行构建发布到生产环境实现CD实现持续部署

持续集成

为了让程序代码可以自动推送到测试环境基于Docker服务运行,需要添加Docker配置和脚本文件让程序可以在集成到主干的同时运行起来。

  • 添加Dockerfile文件
sh 复制代码
FROM adoptopenjdk/openjdk8
# 将当前目录下的jar包复制到docker容器的/目录下
COPY arthas-study.jar /usr/local
WORKDIR /usr/local
CMD java -jar arthas-study.jar
  • 添加docker-compose.yml文件
yml 复制代码
version: "3.1"
services:
  demo:
    build: ./
    image: arthas-study:v1.0.0
    container_name: arthas-study
    ports:
      - 8888:8080
  • 追加Jenkins构建后操作脚本命令

    cd /test/arthas-study/docker
    mv ../target/arthas-study.jar ./arthas-study.jar
    docker-compose down
    docker-compose up -d --build
    docker image prune -f

  • 发布到GitLab后由Jenkins立即构建并托送到目标服务器

  • 测试部署到目标服务器程序

http://192.168.56.112:8888/user/2

指定tag发布

程序代码在经过多次集成操作到达最终可以交付,持续交付整体流程和持续集成类似,不过需要选取指定的发行版本

复制代码
* 下载Git Parameter插件
  • 设置项目参数化构建
  • 给项目添加tag版本
  • 任务构建时,采用Shell方式构建,拉取指定tag版本代码
shell 复制代码
cd /var/jenkins_home/workspace/shield-test/arthas-study
git checkout $release
/var/jenkins_home/maven/bin/mvn package





相关推荐
我星期八休息20 分钟前
Linux—五种IO模型与非阻塞IO
linux·运维·服务器·网络·数据库·网络协议
hweiyu0024 分钟前
Linux命令:column
linux·运维·服务器
SQL-First布道者33 分钟前
全面解构传统持久层框架,拥抱真正的 SQL-First
java·数据库·spring boot·sql·spring·mybatis·spring jdbc
日常筹谋记1 小时前
ATS选不对运维两行泪:数据中心市电与柴发切换场景的双电源自动转换开关选型笔记
运维·数据库·笔记
绿蚁新亭1 小时前
Markdown Wiki 网页代码块复制至欧拉 Linux Shell 脚本隐形字符故障完整复盘
linux·运维·服务器
艾伦_耶格宇1 小时前
【DOCKER容器实战】-3 ElasticSearch + Kibana
elasticsearch·docker·jenkins
小蒜学长1 小时前
vue旅游攻略网站(代码+数据库+LW)
java·数据库·vue.js·spring boot·后端·旅游
mengge.cloud1 小时前
LVS 小白完整教程(Linux虚拟服务器负载均衡)
linux·运维·服务器·负载均衡·lvs
江湖有缘1 小时前
跨平台AI终端Wave:智能SSH与文件管理
运维·人工智能·ssh
凤山老林1 小时前
轻量级规则引擎落地:Spring Boot 集成 LiteFlow 实现动态业务编排与热更新
java·spring boot·后端·规则引擎·liteflow