Jenkins部署springboot项目
记录jenkins如何部署springboot项目(jar类型的)
一、首先需要先配置好jenkins的基本配置(jdk、maven……),可在系统管理——>>
全局工具配置中进行配置。
配置ssh内容:



Transfer SetSource files:表示要上传的本地的war包及路径,可到工作空间去看
Remove prefix:表示要上传时要去除的文件夹。即仅仅上传war包
remote driectory:即表示运行时的路径,相当于把war包上传到这里了,这个很重要,跟上面构建后操作的Remote Directory是会合并到一起的,比如我上面构建后操作中配置的RemoteDirectory是/home/rhel7/Jenkins-in/tmp,然后这边远程服务器的Remote Directory配置的是/,那么war包传输过去路径是/home/rhel7/Jenkins-in/tmp目录。
exec commad:要运行的命令
配置Exec command:
cd /home/rhel7/Jenkins-in/
echo "Execute shell Start"
sh stop.sh
sh replace.sh
echo "Execute shell Finish"
chmod 777 /home/rhel7/Jenkins-in/startup.sh
BUILD_ID=dontKillMe nohup /home/rhel7/Jenkins-in/startup.sh &
三个脚本为:
1. stop.sh
# stop.sh
#!/bin/bash
JARFILE=jenkins-demo-0.0.1-SNAPSHOT.jar cd /home/rhel7/Jenkins-in
echo "Stopping SpringBoot Application"
ls pid=`ps -ef | grep $JARFILE | grep -v grep | awk '{print $2}'`
if [ -n "$pid" ];then
echo "kill -9 的 pid:"$pid
kill -9 $pid
fi
echo "清除进程已完成"
2.replace.sh
#!/bin/bash
# 打包好的项目名称
JARFILE=jenkins-demo-0.0.1-SNAPSHOT.jar
# 编译好的 jar存放地址
file_path=/home/rhel7/Jenkins-in/tmp
# 将现有的 jar 备份后,将新的 jar 替换
file=/home/rhel7/Jenkins-in/jenkins-demo-0.0.1-SNAPSHOT.jar if [ -f "$file" ];then
mv /home/rhel7/Jenkins-in/jenkins-demo-0.0.1-SNAPSHOT.jar /home/rhel7/Jenkins-in/backup/jenkins-demo-0.0.1-SNAPSHOT.jar.`date +%Y%m%d%H%M%S`
fi cp $file_path/jenkins-demo-0.0.1-SNAPSHOT.jar /home/rhel7/Jenkins-in/
# 删除老旧的备份项目
cd /home/rhel7/Jenkins-in/backup
ls -lt | awk 'NR>5{print $NF}' | xargs rm -rf
3.startup.sh
#!bin/bash
export JAVA_HOME=/usr/java/jdk1.8.0_171-amd64
echo ${JAVA_HOME}
echo "授权当前用户"
chmod 777 /home/rhel7/Jenkins-in/jenkins-demo-0.0.1-SNAPSHOT.jar
echo "执行...."
nohup ${JAVA_HOME}/bin/java -jar /home/rhel7/Jenkins-in/jenkins-demo-0.0.1-SNAPSHOT.jar > /dev/null &
echo "启动成功"
Jenkins部署springboot项目的更多相关文章
- 五. jenkins部署springboot项目(2)--windows环境--服务
前提:jenkins和springboot运行在同一台机器 springboot 通过winsw部署为服务 winsw 下载地址:https://github.com/kohsuke/winsw/re ...
- 七. jenkins部署springboot项目(4)-linux环境--远程调试
前提:linux环境,jenkins服务器和springboot服务器不在一台机器. linux环境,jenkins这里就不说了,主要说下和windows环境的不同. 1. jenkins服务器连接s ...
- 四. jenkins部署springboot项目(1)--window环境
前提:jenkins和springboot运行在同一台机器 springboot项目使用git和maven jenkins所需的插件如Maven,Git等这里就不再详述. 1.jenkins配置git ...
- 六. jenkins部署springboot项目(3)--windows环境--远程windows server服务器
前提:jenkins服务器和windows server服务器不在一台机器上 对于jenkins服务器上编译好的jar或war包如何推送到windows server服务器上. 参照网上的,在wind ...
- jenkins部署web项目到webogic
注: Docker容器里安装的jenkins,Docker容易里安装的weblogic 在jenkins里面直接将打包好的 war 包通过 Publish over SSH插件 放入 weblogic ...
- SpringBoot入门教程(二)CentOS部署SpringBoot项目从0到1
在之前的博文<详解intellij idea搭建SpringBoot>介绍了idea搭建SpringBoot的详细过程, 并在<CentOS安装Tomcat>中介绍了Tomca ...
- docker部署springboot项目
本文介绍一下docker如何部署springboot项目. 前提条件: 1.可以运行jar包的环境 2.机器上已经安装了docker 3.准备部署的springboot的jar包 4.Dockerfi ...
- jenkins部署java项目,脚本文件放在远程仓库中 和jar一起打包(六)
jenkins部署java项目到远程linux上,脚本文件和项目一起上传到gogs上,直接执行gogs上的脚本文件来执行项目 (1)新建maven项目 pom.xml的配置 <project x ...
- Jenkins部署Web项目到远程tomcat(通过jenkins插件)
之前讲到的是如何构建一个项目,并且将代码进行编译.打包,那么打包完成最后的结果就需要发布到应用服务器,将项目部署成功.在之前的项目中我们采用的shell脚本来部署,下面讲解通过Jenkins部署web ...
随机推荐
- SonarQube学习(一)- 使用Docker安装SonarQube(亲测可用)
一.前言 不得不吐槽下,现在的博客写的真太扯淡了,就网上写的使用docker安装SonarQube而言,搜到十篇文章,最少9篇照着操作配置都不可用,卡在SonarQube无法启动.自然,我也是被折磨的 ...
- 6.mysql存储过程
存储过程 1.命令 创建及调用 定义分隔符 DELIMITER $ 创建存储过程 delimiter $$ create procedure 名称() begin 语句 end$$ delimiter ...
- IT职业:2021年掌握的10项关键技能
原文:https://enterprisersproject.com/article/2020/12/it-careers-10-critical-skills-master-2021 科技行业似乎在 ...
- Java学习_Java核心类
字符串和编码 字符串在String内部是通过一个char[]数组表示的,因此,可以按下面的写法: String s2 = new String(new char[] {'H', 'e', 'l', ' ...
- Go操作Redis实战
目录 安装Redis客户端 连接redis 基本指令 Keys():根据正则获取keys Type():获取key对应值得类型 Del():删除缓存项 Exists():检测缓存项是否存在 Expir ...
- java 合并两个list 并去重
//两个list合并并去除重复 public static void main(String[] args) throws Exception { List list1 =new ArrayList( ...
- Java学习日报7.10
package Address;import java.util.Scanner; public class Address{ Scanner sc=new Scanner(System.in); p ...
- 【转载】Vue.nextTick 的原理和用途
对于 Vue.nextTick 方法,自己有些疑惑.在查询了各种资料后,总结了一下其原理和用途,如有错误,请不吝赐教. 概览 官方文档说明: 用法: 在下次 DOM 更新循环结束之后执行延迟回调.在修 ...
- .net通过iTextSharp.pdf操作pdf文件实现查找关键字签字盖章
之前这个事情都CA公司去做的,现在给客户做demo,要模拟一下签字盖章了,我们的业务PDF文件是动态生成的所以没法通过坐标定位,只能通过关键字查找定位了. 之前在网上看了许多通多通过查询关键字,然后图 ...
- [强制]IDE使用UTF-8和LF
Java 程序开发常用的集成开发环境(IDE)有Eclipse和IntelliJ IDEA.Eclipse是免费开源的,很多早期程序员使用它的比较多.IntelliJ IDEA有社区版和企业版,社区版 ...