前提说明:
spring boot 应用打包成jar包之后要部署到Linux服务器上面运行,
我用的nohup java -jar 命令,但是代码更新之后重新部署的时候覆盖原来的项目,又要手动运行
ps -ef|grep jar包名 去查找进程,然后kill -9  去kill进程,有时候nohup进程老是kill不掉,只能多试几次,烦不胜烦。
.后来专门花时间研究了一下脚本和本地window上传文件到linux服务器的命令,
整合了一个启动脚本,顿时项目部署变得无比简单,一分钟内在线上的代码就可以更新了。下面是具体步骤:

#!/bin/sh

RESOURCE_NAME=zhgj-0.0.1-SNAPSHOT.jar

cd /home/workspace/zhgj3.0/

git pull

mvn clean package

cd /opt/atlassian/zhgj_3.0/

tpid=`ps -ef|grep $RESOURCE_NAME |grep -v grep|grep -v kill|awk '{print $2}'`

kill -9 ${tpid}
 
rm -f tpid

###备份文件
currenttime=$(date +%Y%m%d%H%M%S)

cp $RESOURCE_NAME ./backup/$currenttime.jar

rm -rf $RESOURCE_NAME

cp /home/workspace/zhgj3.0/target/zhgj-0.0.1-SNAPSHOT.jar /opt/atlassian/zhgj_3.0/

nohup java -jar $RESOURCE_NAME --spring.profiles.active=test > zhgj3_0.log  2>&1 &

sleep 3

echo $! > tpid
echo Start Success!

第二步, 脚本运行

cd /home (我是把jar包和脚本放在home下面)

chmod +x start.sh (第一次运行的时候获取一下超级管理员权限)

然后以后每次运行直接

./start.sh 即可

Spring Boot 应用 快速发布到linux服务器的脚本代码示例的更多相关文章

  1. Spring Boot【快速入门】简单案例

    Spring Boot[快速入门]   Spring Boot 概述 Build Anything with Spring Boot:Spring Boot is the starting point ...

  2. Spring Boot框架——快速入门

    Spring Boot是Spring 全家桶非常重要的一个模块,通过 Spring Boot 可以快速搭建一个基于 Spring 的 Java 应用程序,Spring Boot 对常用的第三方库提供了 ...

  3. ASP.NET Core 网站发布到Linux服务器

    长期以来,使用.NET开发的应用只能运行在Windows平台上面,而目前国内蓬勃发展的互联网公司由于成本的考虑,大量使用免费的Linux平台,这就使得.NET空有一身绝技但无法得到广大的施展空间,.N ...

  4. ASP.NET Core 网站发布到Linux服务器(转)

    出处;ASP.NET Core 网站发布到Linux服务器 长期以来,使用.NET开发的应用只能运行在Windows平台上面,而目前国内蓬勃发展的互联网公司由于成本的考虑,大量使用免费的Linux平台 ...

  5. java项目发布到linux服务器,tomcat正常启动但没加载项目

    问题描述: java项目发布到linux服务器,一切操作正确,linux命令启动tomcat后,查看日志启动tomcat正常,上传的war包已经解压成功,但是tomcat没加载项目. 解决方法: 1. ...

  6. Spring Boot:快速入门教程

    什么是Spring Boot? Spring Boot是由Pivotal团队提供的全新框架,其设计目的是用来简化新Spring应用的初始搭建以及开发过程.该框架使用了特定的方式来进行配置,从而使开发人 ...

  7. Spring Boot中快速操作Mongodb

    Spring Boot中快速操作Mongodb 在Spring Boot中集成Mongodb非常简单,只需要加入Mongodb的Starter包即可,代码如下: <dependency> ...

  8. Spring Boot 如何快速集成 Redis 哨兵?

    上一篇:Spring Boot 如何快速集成 Redis? 前面的分享栈长介绍了如何使用 Spring Boot 快速集成 Redis,上一篇是单机版,也有粉丝留言说有没有 Redis Sentine ...

  9. Spring Boot:快速入门

    上一篇讲述什么是Spring Boot,这一篇讲解怎么使用IDE工具快速搭建起来独立项目. 一.构建方式 快速搭建项目有三种方式,官方也有答案给到我们: 二.构建前准备 想要使用IDE运行起来自己的S ...

随机推荐

  1. transition动画最简使用方式

    HTML <a href="#" title="">test</a> CSS a {display:block; width:200px ...

  2. Spring.Net框架学习错误集锦1

    最近IoC框架非常火热,所以就学习了非常流行的IOC框架之一spring.NET,遇到如下问题: Error creating context 'spring.root': Could not loa ...

  3. 黑马Mybatis day3 多表查询 1.xml配置方式 2.注解方式

    package com.itheima.mozq; import com.itheima.domain.Order; import com.itheima.mapper.OrderMapper; im ...

  4. CodeForces - 796B-Find The Bone(模拟)

    Zane the wizard is going to perform a magic show shuffling the cups. There are n cups, numbered from ...

  5. mysql 启动停止脚本 and mysql 迁移 导入和导出

    ####监控脚本 [root@pdb~]# more /opt/VRTS/scripts/mysql_monitor.sh#!/bin/shn=`ps -ef |grep mysql|grep &qu ...

  6. swjtu oj Paint Box 第二类斯特林数

    http://swjtuoj.cn/problem/2382/ 题目的难点在于,用k种颜色,去染n个盒子,并且一定要用完这k种颜色,并且相邻的格子不能有相同的颜色, 打了个表发现,这个数是s(n, k ...

  7. CentOS7.2安装MySql5.7并开启远程连接授权

    1.安装mysql5.7 CentOS 7之后的版本yum的默认源中使用MariaDB替代原先MySQL,因此安装方式较为以往有一些改变: 下载mysql的源 wget http://dev.mysq ...

  8. webpack.config.js====CSS相关:css和scss配置loader

    1. 安装: //loader加载器加载css和sass模块 cnpm install style-loader css-loader node-sass sass-loader --save-dev ...

  9. webpack.config.js====插件clean-webpack-plugin

    1. 安装:主要是用来清除重复文件,生成最新的的插件 就是说在编译文件的时候,先把 build或dist (就是放生产环境用的文件) 目录里的文件先清除干净,再生成新的带有hash值的文件 cnpm ...

  10. 【Design Patterns】监听器模式

    监听器模式 监听器模式其实是观察者模式中的一种,两者都有关于回调的设计. 与观察者模式不同的是,观察者模式中存在的角色为观察者(Observer)和被观察者(Observable) 而监听器模式中存在 ...