java项目部署

一.手工部署,进程不退出

(提前安装好JDK,配置环境变量)
nohub java -jar xxx.jar &> my.log &

二.shell脚本部署

1.安装git
2.从git仓库拉取代码,git clone 仓库地址
3.安装maven(下载,然后解压即可)
配置一下环境变量
4.新建shell脚本:bootStart.sh

#!/bin/sh
echo #########
自动化部署脚本启动
echo #########
echo
echo 停止原来运行中的工程
APP_NAME=helloworld
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
sleep2
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/helloworld
echo 开始从Git仓库拉取最新代码
git pull 
echo 代码拉取完成
echo 开始打包
output=`mvn clean package -Dmaven.test.skip=true`
cd target
echo 启动项目
nohub java -jar  xxx.jar &> my.log &

5.执行脚本 ./bootStart.sh (注意文件权限)
三.nginx反向代理

3.1安装nginx并配置环境变量

3.2反向代理前端服务

3.3反向代理后端服务

location ^~ /api/{
rewrite ^/api/(.*)$ /$1 break;#截取api后面的路径为请求路径
proxy pass http://127.0.0.1:8080;
}

假设服务接口地址:http://127.0.0.1:8080/user/login
前端页面请求地址:http://127.0.0.1:8080/api/user/login
通过上面的截取,前端页面加了api前缀的接口请求地址也可以访问到后端服务接口/user/login

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容