導入アーキテクチャ
ユーザーはフロントエンド リソース (nginx) にアクセスし、関連するバックエンド リソースは nginx のリバース プロキシを通じてアクセスされます。
フロントエンドリソースの導入
事前にサーバー上にNginxとMySQLをダウンロードし、フロントエンドのパッケージ化ファイルをnginxディレクトリ内のhtmlファイルにアップロードします
設定ファイルを変更する
設定ファイルをリロードし、nginx サービスを開始します。
この時点でフロントエンドがデプロイされました。!!
バックエンドリソースのデプロイメント
事前にjdk、MySQL、tomcat、gitをサーバーにダウンロードし、git cloneを使用してコードを複製します。
プロセスの強制終了、コードのプル、パッケージ化、サービスの開始の機能を完了するシェル スクリプトを作成します。シェル スクリプトは次のとおりです。
echo =================================
echo 自动化部署脚本启动
echo =================================
echo 停止原来运行中的工程
APP_NAME=reggie
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 /javaProject/reggie
echo 开始从Git仓库拉取最新代码
git pull
echo 代码拉取完成
echo 开始打包
output=`mvn clean package -Dmaven.test.skip=true`
cd target
echo 启动项目
LOG_NAME=reggieLog.log
nohup java -jar Reggie-0.0.1-SNAPSHOT.jar &> $LOG_NAME &
echo 项目启动完成
シェルスクリプトを起動する
この時点で、バックエンドがデプロイされました。!!!
192.168.1.131 にアクセス (nginx によってデプロイされたサーバー)
ページは正常にアクセスされました。ログインできるか試してみましょう。ログインできれば、前後の分割展開は成功したことになります。!!