- 0.准备工作
- 1.在linux安装git
- 2.在linux中安装maven
- 3.编写shell脚本(拉取代码,编译,打包,启动)
- 4.为用户授予执行shell脚本的权限(默认没有权限)
- 5.执行shell脚本
- 6.本地修改代码推送到远程仓库
- 7.重新执行shell脚本
首先准备一个springboot项目,简单点就行,同时push到gitee或者github。还有一个云服务器或者虚拟机
目标:执行shell脚本后,就可以访问到该项目,以后在本地修改项目代码推送到远程,再次执行shell脚本,就可以看到最新的内容。
1.在linux安装githttps://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地址
https://blog.csdn.net/m0_37959155/article/details/124981422?spm=1001.2014.3001.5502
包括安装maven和配置仓库镜像
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.sh5.执行shell脚本
./bootStart.sh
在本地访问项目
服务器ip:端口/路径
在本地修改代码后push到远程
cd /usr/local/sh sh bootStart.sh
再次在本地访问项目
服务器ip:端口/路径



