运维学习————Jenkins部署Jar包

2024-09-06 23:44
文章标签 部署 学习 运维 jenkins jar

本文主要是介绍运维学习————Jenkins部署Jar包,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

目录

使用Jenkins部署Jar包

1、在Jenkins构建Jar包

2、把项目部署到jenkins本地

3、部署到远程服务器上(不是Jenkins所在的服务器)

4、其他jenkins部署方式(使用插件publish over ssh)

1、安装插件

2、配置system

3、jenkins配置


使用Jenkins部署Jar包

1、在Jenkins构建Jar包

丢弃旧的构建 保存构建天数=3 保持构建的最大个数=10

构建无数次,只保留最近10次,并且保存3天,节省磁盘空间!

这里先构建一下

2、把项目部署到jenkins本地

让当前包,在jenkins上运行:

add pre-build step 和add post-build step 区别?

add pre-build step 在项目构建之前执行什么 (执行脚本等操作)

add post-build step 在项目构建之后执行什么 (执行脚本等操作)

 

java -jar /root/.jenkins/workspace/shared_battery/target/shared_battery-0.0.1-SNAPSHOT.jar 

再次构建运行,测试:可以正常访问

3、部署到远程服务器上(不是Jenkins所在的服务器)

重新修改脚本

ssh-keygen     回车3次
ssh-copy-id  192.168.37.128 远程服务器ip    回车 输入正确的密码

远程服务器准备工作

#创建工作目录
mkdir -p /usr/workspace/sb#编写脚本,运行jar用的
vim /usr/workspace/app-start.sh#!/bin/bash
#打印提示
echo "Stop  app.jar  Process : app.jar"
#获取指定项目app.jar的运行pid
pid=`ps -ef |grep java|grep app.jar | grep -v grep |awk '{print $2}'`
echo "old app.jar  pid:$pid"#pid存在则kill   -n 判断pid是否为null
if [ -n "$pid" ]
then
kill -9 $pid
fi
#打印提示 
echo 'Start the program : app.jar'
#给项目jar  777权限#进入项目所在目录,在jenkins服务器上配置的工作目录
cd /usr/workspace/sb
#修改权限
chmod 777 /usr/workspace/sb/app.jar
#打印提示
echo '-------Starting-------'
#运行项目 (指定时区  指定字符编码  指定输出日志)
source /etc/profile && java -jar app.jar >app.log 2>&1 &
#/usr/java/jdk1.8.0_15/bin/java -jar app.jar >app.log 2>&1 &
echo 'jar启动完成'#给脚本添加可执行权限
chmod   +x   /usr/workspace/app-start.sh

运行,测试,没一点问题

4、其他jenkins部署方式(使用插件publish over ssh)

1、安装插件

2、配置system

3、jenkins配置

#!/bin/bash
#打印提示
echo "Stop  app.jar  Process : app.jar"
#获取指定项目app.jar的运行pid
pid=`ps -ef |grep java|grep shared_battery-0.0.1-SNAPSHOT.jar | grep -v grep |awk '{print $2}'`
echo "old app.jar  pid:$pid"
#删除原来jar
#rm -rf /root/data1/springboot_restful_demo_20230717-0.0.1-SNAPSHOT.jar
#pid存在则kill   -n 判断pid是否为null
if [ -n "$pid" ]
then
kill -9 $pid
fi
#打印提示 
echo 'Start the program : app.jar'
#给项目jar  777权限#进入项目所在目录,在jenkins服务器上配置的工作目录
cd /root/data
#修改权限
chmod 777 /root/data/shared_battery-0.0.1-SNAPSHOT.jar
echo '-------Starting-------'
#运行项目 (指定时区  指定字符编码  指定输出日志)
source /etc/profile && java -jar shared_battery-0.0.1-SNAPSHOT.jar >app.log 2>&1 &
echo 'jar启动完成'

#给脚本添加可执行权限

chmod +x /usr/workspace/app-start-1.sh

运行测试

这篇关于运维学习————Jenkins部署Jar包的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1143455

相关文章

Linux在线解压jar包的实现方式

《Linux在线解压jar包的实现方式》:本文主要介绍Linux在线解压jar包的实现方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录linux在线解压jar包解压 jar包的步骤总结Linux在线解压jar包在 Centos 中解压 jar 包可以使用 u

linux解压缩 xxx.jar文件进行内部操作过程

《linux解压缩xxx.jar文件进行内部操作过程》:本文主要介绍linux解压缩xxx.jar文件进行内部操作,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、解压文件二、压缩文件总结一、解压文件1、把 xxx.jar 文件放在服务器上,并进入当前目录#

Jenkins分布式集群配置方式

《Jenkins分布式集群配置方式》:本文主要介绍Jenkins分布式集群配置方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录1.安装jenkins2.配置集群总结Jenkins是一个开源项目,它提供了一个容易使用的持续集成系统,并且提供了大量的plugin满

如何在Ubuntu 24.04上部署Zabbix 7.0对服务器进行监控

《如何在Ubuntu24.04上部署Zabbix7.0对服务器进行监控》在Ubuntu24.04上部署Zabbix7.0监控阿里云ECS服务器,需配置MariaDB数据库、开放10050/1005... 目录软硬件信息部署步骤步骤 1:安装并配置mariadb步骤 2:安装Zabbix 7.0 Server

PowerShell中15个提升运维效率关键命令实战指南

《PowerShell中15个提升运维效率关键命令实战指南》作为网络安全专业人员的必备技能,PowerShell在系统管理、日志分析、威胁检测和自动化响应方面展现出强大能力,下面我们就来看看15个提升... 目录一、PowerShell在网络安全中的战略价值二、网络安全关键场景命令实战1. 系统安全基线核查

Java通过驱动包(jar包)连接MySQL数据库的步骤总结及验证方式

《Java通过驱动包(jar包)连接MySQL数据库的步骤总结及验证方式》本文详细介绍如何使用Java通过JDBC连接MySQL数据库,包括下载驱动、配置Eclipse环境、检测数据库连接等关键步骤,... 目录一、下载驱动包二、放jar包三、检测数据库连接JavaJava 如何使用 JDBC 连接 mys

springboot项目打jar制作成镜像并指定配置文件位置方式

《springboot项目打jar制作成镜像并指定配置文件位置方式》:本文主要介绍springboot项目打jar制作成镜像并指定配置文件位置方式,具有很好的参考价值,希望对大家有所帮助,如有错误... 目录一、上传jar到服务器二、编写dockerfile三、新建对应配置文件所存放的数据卷目录四、将配置文

解决未解析的依赖项:‘net.sf.json-lib:json-lib:jar:2.4‘问题

《解决未解析的依赖项:‘net.sf.json-lib:json-lib:jar:2.4‘问题》:本文主要介绍解决未解析的依赖项:‘net.sf.json-lib:json-lib:jar:2.4... 目录未解析的依赖项:‘net.sf.json-lib:json-lib:jar:2.4‘打开pom.XM

python如何调用java的jar包

《python如何调用java的jar包》这篇文章主要为大家详细介绍了python如何调用java的jar包,文中的示例代码简洁易懂,具有一定的借鉴价值,有需要的小伙伴可以参考一下... 目录一、安装包二、使用步骤三、代码演示四、自己写一个jar包五、打包步骤六、方法补充一、安装包pip3 install

Go学习记录之runtime包深入解析

《Go学习记录之runtime包深入解析》Go语言runtime包管理运行时环境,涵盖goroutine调度、内存分配、垃圾回收、类型信息等核心功能,:本文主要介绍Go学习记录之runtime包的... 目录前言:一、runtime包内容学习1、作用:① Goroutine和并发控制:② 垃圾回收:③ 栈和