當前位置:網站首頁>項目部署(簡版)

項目部署(簡版)

2022-07-23 11:03:48青樖

 前端項目的部署,及後端項目的部署

 

前端部署服務器: Nginx

後端部署服務器: Tomcat(內嵌)

 在服務器A(192.168.*.*)中安裝Nginx,將前端打包的文件上傳到Nginx的html目錄下

修改Nginx配置文件nginx.conf

將nginx.conf配置文件中,將原有的監聽80, 82, 8080端口號 的虛擬主機注釋掉,引入如下的配置信息:

server {
        listen       80;
        server_name  localhost;

        location / {
            root   自己的頁面;
            index  頁面名稱.html;
        }
		
		location ^~ /api/ {
			rewrite ^/api/(.*)$ /$1 break;
			proxy_pass http://192.168.*.*:8080;
		}
		
        location = /50x.html {
            root   html;
        }
    }

通過nginx訪問前端工程

192.168.*.*

反向代理配置

前端工程部署完成之後,我們可以正常的訪問到系統的登錄頁面,點擊登錄按鈕,可以看到服務端發起的請求

/api這個前綴在不修改服務端代碼的情况下通過nginx的就可以輕松解决這個問題

這一段配置代錶,如果請求當前nginx,並且請求的路徑如果是 /api/ 開頭,將會被該location處理。而在該location中,主要配置了兩塊兒信息: rewrite(url重寫) 和 proxy_pass(反向代理)。 接下來我們就來解析一下這兩項的配置。

rewrite ^/api/(.*)$ /$1 break;

這裏寫的是一個正則錶達式,代錶如果請求路徑是以 /api/ 開頭,後面的請求路徑任意,此時將原始的url路徑重寫為 /$1,這裏的$1指代的就是通配符 .* 這一塊的內容。比如:

/api/employee/login ------> ^/api/(.*)$ -------->
 此時 (.*) 匹配的就是 employee/login ------> 
最終重寫為/$1 : /employee/login

反向代理

proxy_pass http://192.168.138.101:8080;

在服務器B(192.168.*.*1)中安裝jdk、git、maven、MySQL,使用git clone命令將git遠程倉庫的代碼克隆下來

確認jdk: java -version

確認git:git -version

確認maven:mvn -v

將我們開發完成的代碼推送至遠程倉庫,並在服務器B中克隆下來

#創建java代碼存放目錄
mkdir -p /usr/local/javaapp

#切換目錄
cd /usr/local/javaapp

#克隆代碼 , 需要使用自己的遠程倉庫
git clone https://gitee.com/**/***.git 

我們可以通過 ps -ef|grep java 指令,查看服務是否啟動。

執行脚本

#!/bin/sh
echo =================================
echo  自動化部署脚本啟動
echo =================================

echo 停止原來運行中的工程
APP_NAME=**********

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/javaapp/*****

echo 開始從Git倉庫拉取最新代碼
git pull
echo 代碼拉取完成

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

cd target

echo 啟動項目
nohup java -jar *********.jar &> *****.log &
echo 項目啟動完成

圖片展示問題處理

將文件存儲目錄修改:path: /usr/local/img/

將本地的測試圖片文件夾img(整個文件夾)上傳到服務器B的/usr/local目錄下

然後就訪問主庫地址出來就成功了

版權聲明
本文為[青樖]所創,轉載請帶上原文鏈接,感謝
https://cht.chowdera.com/2022/204/202207230537007900.html

隨機推薦