栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

shell脚本自动部署springboot项目

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

shell脚本自动部署springboot项目

shell脚本自动部署springboot项目
  • 0.准备工作
  • 1.在linux安装git
  • 2.在linux中安装maven
  • 3.编写shell脚本(拉取代码,编译,打包,启动)
  • 4.为用户授予执行shell脚本的权限(默认没有权限)
  • 5.执行shell脚本
  • 6.本地修改代码推送到远程仓库
  • 7.重新执行shell脚本

0.准备工作

首先准备一个springboot项目,简单点就行,同时push到gitee或者github。还有一个云服务器或者虚拟机

目标:执行shell脚本后,就可以访问到该项目,以后在本地修改项目代码推送到远程,再次执行shell脚本,就可以看到最新的内容。

1.在linux安装git

https://blog.csdn.net/m0_37959155/article/details/124975625?spm=1001.2014.3001.5502
包括安装git和设置ssh公钥到远程
安装完成后,建立以下目录
/usr/local/myapp/git_hello
然后 cd /usr/local/myapp/git_hello
git clone 你的远程仓库ssh地址

2.在linux中安装maven

https://blog.csdn.net/m0_37959155/article/details/124981422?spm=1001.2014.3001.5502
包括安装maven和配置仓库镜像

3.编写shell脚本(拉取代码,编译,打包,启动)
cd /usr/local
mkdir sh
touch bootStart.sh
cd /usr/local/sh
vim bootStart.sh

将下面脚本修改后复制到bootStart.sh

#!/bin/sh
echo =================================
echo  自动化部署脚本启动
echo =================================

echo 停止原来运行中的工程
APP_NAME=你自己的项目名

tpid=`ps -ef|grep $APP_NAME|grep -v grep|grep -v kill|awk '{print $2}'`
if [ ${tpid} ]; then
    echo 'Stop Process...'
    kill -15 $tpid
fi
sleep 2
tpid=`ps -ef|grep $APP_NAME|grep -v grep|grep -v kill|awk '{print $2}'`
if [ ${tpid} ]; then
    echo 'Kill Process!'
    kill -9 $tpid
else
    echo 'Stop Success!'
fi

echo 准备从Git仓库拉取最新代码
cd /usr/local/myapp/git_hello/你自己的项目名

echo 开始从Git仓库拉取最新代码
git pull
echo 代码拉取完成

echo 开始打包
output=`mvn clean package -Dmaven.test.skip=true`

cd target

echo 启动项目
nohup java -jar 你自己的项目名-0.0.1-SNAPSHOT.jar &> 你自己的项目名.log &
echo 项目启动完成

将你自己的项目名替换成你自己实际的项目名

4.为用户授予执行shell脚本的权限(默认没有权限)
cd /usr/local/sh
chmod 777 bootStart.sh
5.执行shell脚本
./bootStart.sh

在本地访问项目
服务器ip:端口/路径

6.本地修改代码推送到远程仓库

在本地修改代码后push到远程

7.重新执行shell脚本
cd /usr/local/sh
sh bootStart.sh


再次在本地访问项目
服务器ip:端口/路径

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/932665.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号