项目部署
手工部署项目
- 在开发工具中将项目打包
- 将打包的项目上传Linux
java -jar 文件名
即可运行成功。- 前提配置jdk环境开启端口等,看上一章
- 手工部署关闭窗口即关闭项目
- 手工配置后台运行项目
nohup java -jar 文件名 &>hello.log &
- 停止服务使用杀死进程的方式
kill -9 id号
- 查询id号
ps -ef | grep java
Shell脚本自动部署
- 在Linux中安装git
- yum命令安装git
yum insatll git
- 克隆代码
git clone 地址
- yum命令安装git
- 在Linux中安装maven
-
将压缩包上传到linux
-
tar -zxvf apache-maven-3.5.4-bin.tar.gz -C /usr/local/
-
vi /etc/profile
修改配置文件加入该内容export MAVEN_HOME=/usr/local/apache-maven-3.5.4 export PATH=$JAVA_HOME/bin:$MAVEN_HOME/bin:$PATH
-
立即生效
source /etc/profile
-
mvn -version
检查是否安装成功
-
- 编写shell脚本内容
echo =================================
echo 自动化部署脚本启动
echo =================================
echo 停止原来运行中的工程
APP_NAME=reggie_take_out
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
echo 开始从Git仓库拉取最新代码
git pull
echo 代码拉取完成
echo 开始打包
output=`mvn clean package -Dmaven.test.skip=true`
cd target
echo 启动项目
nohup java -jar reggie_take_out-1.0-SNAPSHOT.jar &> reggie_take_out.log &
echo 项目启动完成
-
为用户授予执行脚本权限
- 8进制授权
chmod 777 hs.sh
给所以用户授权
- 8进制授权
-
执行脚本
./hs.sh