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





相关推荐
一个天蝎座 白勺 程序猿1 分钟前
从电网改造踩坑说起:深度拆解时序大模型TimechoAI的自主可控与安全合规底气
大数据·运维·服务器·大模型·timechoai
ShineWinsu3 分钟前
对于Linux:UDPsocket编程基础的解析
linux·运维·网络协议·udp·ip·端口号·进程间通信
宠友信息1 小时前
消息序号如何保证即时通讯源码聊天记录稳定加载
java·spring boot·redis·python·mysql·uni-app
Spider Cat 蜘蛛猫2 小时前
Anthropic的skill-creator使用分享
运维·服务器
Yang96114 小时前
探索无线新视界:鼎讯信通DXMP系列频谱仪模块深度剖析
运维·网络
杨了个杨89824 小时前
Docker Compose 简介及应用
运维·docker·容器
豆瓣鸡4 小时前
XXL-JOB 定时任务——从 Docker 部署到分片广播,分布式任务调度落地
spring boot·分布式·docker·定时任务
Urbano5 小时前
卫衣生产工艺科普与智能自动化设备应用解析
大数据·运维·人工智能
lastHertz6 小时前
Nginx安装部署
运维·nginx