瑞吉外卖部署到阿里云服务器

460 阅读1分钟

1. 阿里云服务器的环境搭建

  1. jdk
  2. gcc
  3. mysql:设置密码,然后navicat连接,再将主机上的数据库复制粘贴到服务器上(利用navicat很方便实现)
  4. redis:设置密码,以及conf配置文件的修改
  5. nginx:暂时没用到
  6. 创建一个文件夹准备pull项目
  7. git:不用管本地仓库装到哪里了,直接在6.创建的文件夹中git clone url即可,本地仓库便于远程仓库链接上
  8. 创建一个文件夹存放图片资源

2. 项目部署

  1. 瑞吉外卖中的.yml文件中的mysql ip、密码,redis ip、密码都要修改为服务器上的,图片资源存放路径也要改为服务器上的

  2. 然后idea中先maven clean,再package,再commit and push

  3. 服务器上便可以git clone url了

  4. 先运行试试,java -jar ... .target,如果能成功在外部访问静态资源和动态数据,便可以开始编写.sh脚本,方便以后pull最新项目和部署最新项目

  5. .sh脚本:

#!/bin/sh
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/myDir/reggie/reggie-for-linux

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

echo 开始打包
git stash
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 项目启动完成