項目配置
數據庫配置
組件配置
- Redis配置: 配置連接地址
- Redis配置端口號
- Redis配置連接密碼
日誌配置
- 配置日誌存放路徑
- 注意日誌字符集是否添加完整,在encoder標籤中
項目上傳
前端
- 將前端項目壓縮上傳至服務器
- 壓縮是爲了保證項目包含隱藏的文件能夠完整地上傳至服務器
後端
- 將後端項目壓縮上傳至服務器
- 壓縮是爲了保證項目包含隱藏的文件能夠完整地上傳至服務器
項目打包
前端
- 解壓前端項目
- 進入項目文件夾中
- 安裝依賴: npm install --unsafe-perm --registry=xxx(依賴地址)
- 項目打包: npm run build:prod
- 生成dist文件夾
後端
jar
- 解壓後端項目
- 進入項目文件夾中
- 項目打包: mvn package
- 生成target文件
war
- 將項目使用外置的Tomcat部署
- 修改pom.xml配置: 將打包方式packaging的打包方式改爲war
- 在SpringBoot的Tomcat容器依賴中排除掉自帶的Tomcat.增加作用域scope限制爲provided
- 新建項目的啓動類:
public class SpringBootStartApplication extends SpringBootServletInitializer {
@Override
protected SpringApplicationBuilder configure(SpringApplicationBuilder builder) {
return builder.source(XxxApplication.class);
}
}
- 清理之前的打包項目target: mvn clean
- 對新的項目進行打包: mvn package
項目部署
前端
- 進入nginx配置文件nginx.conf修改驅動路徑:
location / {
root dist所在路徑
index index.html index.htm;
}
- 如果使用root賬戶,需要同時將文件開頭的user改爲root
- 進入nginx的sbin目錄中啓動nginx: ./nginx
- 後續更新部署: nginx -s reload
後端
jar
war
- 將打包好的war包拷貝到Tomcat的文件夾webapps中
- 啓動Tomcat: service tomcat start
關聯
location /prod-api/ {
proxy_set_header Host $http_host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header REMOTE-HOST $remote_addr;
proxy_set_heaer X-Forward-For $proxy_add_x_forwarded_for;
proxy_pass 實際後端地址;
}
upstream cluster {
server 實例IP:8080;
server 實例IP:8080;
}
==========================================================================================================================================================
location /prod-api/ {
proxy_set_header Host $http_host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header REMOTE-HOST $remote_addr;
proxy_set_heaer X-Forward-For $proxy_add_x_forwarded_for;
proxy_pass 多實例中的upstream地址;
}