(半)自动在linux上部署java项目

15 篇文章 0 订阅
5 篇文章 0 订阅

1.编写好项目

2.linux的环境配置好

安装jdk8:http://t.csdn.cn/PGsS9
安装git:http://t.csdn.cn/zcv6f
安装tomcat:http://t.csdn.cn/YqPFN
安装maven:http://t.csdn.cn/GeYzG
安装mysql:http://t.csdn.cn/bN6fB(可选)
设置静态ip:http://t.csdn.cn/ApYrj
将项目通过git传到linux上:http://t.csdn.cn/rL1Zm

3.编写shell(拉取,编译,打包,启动)

新建一个sh在/usr/local/sh/,名称为:

bootStart.sh

//注意更改APP_NAME和JAR_NAME,改成对应的项目名与包名

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

echo 停止原来运行中的工程
APP_NAME=hellospringboot
JAR_NAME=hellospringboot-0.0.1-SNAPSHOT.jar

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/$APP_NAME

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

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

cd target

echo 启动项目
nohup java -jar $JAR_NAME &> $APP_NAME.log &
echo 项目启动完成

4.为用户授予执行shell的权限

调整其他人执行权限:使用chmod

cd /usr/local/sh
chmod 777 bootStart.sh

初级阶段直接用root就行

5.执行shell

./bootStart.sh

可能会乱码

然后让输入gitee的用户名和密码(如果用户名密码输入错误,可以按Ctrl+C停止运行)

如果乱码出现以下状态,就说明还在下载maven库,还在打包

最好等一会儿
在这里插入图片描述

打包成功

在这里插入图片描述

现在可以用win的浏览器测试效果

192.168.199.132:8080/hello
//这是虚拟机ip地址+项目端口号+api

如果出现404,可能是没有启动成功,

可以检查项目的日志

进入项目目录的target目录,然后读取有log后缀的文件

cat helloworld.log

5.测试链接

成功页面:
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值