項目部署一次記錄

鏈路:(用戶)客戶端 → Nginx:192.168.138.100→ Tomcat (程序):192.168.138.101→ MySQL/Redis

  • 打開數據庫:systemctl start mysqld
  • 重啟網絡: systemctl restart NetworkManager
  • 關閉防火墻: systemctl stop firewalld

環境準備說明:

  • 192.168.138.100(服務器A)
    Nginx:部署前端項目,配置反向代理
    Mysql:主從復制結構中的主庫
  • 192.168.138.101(服務器B):
    jdk:運行Java項目
    git:版本控制工具
    maven:項目構建工具
    jar:Spring Boot打成jar包基于內置Tomcat
    Mysql:主從復制結構中的從庫

前端部署

  1. 下載安裝nginx
  2. 上傳前端打包項目 文件夾dist 至nginx的html目錄下
  3. 修改Nginx配置文件nginx.conf的默認index以及反向代理http://192.168.138.101:8080
  4. /api/ 訪問地址會有對應映射

后端部署

  1. 在線安裝jdk
 yum search java|grep jdkyum install java-1.8.0-openjdkjava -version
  1. 下載maven(Click-常見的3.x.x其他版本)并解壓maven包到指定目錄
wget url下載地址(路徑:download - Other Releases - 點擊 Maven 3 archives)
tar -zxvf  apache-maven-3.8.1-bin.tar.gz /usr/local/maven
mvn -v

配置本地maven倉庫與阿里私服:
mkdir maven-repository
conf-setting.xml

<localRepository>/usr/local/maven/maven-repository</localRepository>
<mirror><id>alimaven</id><name>aliyun maven</name><mirrorOf>central</mirrorOf><url>http://maven.aliyun.com/nexus/content/groups/public/</url>
</mirror>

更新環境變量:
vi /etc/profile

export MAVEN_HOME=/usr/local/maven/apache-maven-3.8.1
export PATH=$JAVA_HOME/bin:$MYSQL_HOME/bin:$MAVEN_HOME/bin:$PATH
#或者用這個export PATH=${PATH}:${MAVEN_HOME}/bin

source /etc/profile

  1. 在線安裝git
 yum install gitgit --version

問題排查

瀏覽器訪問地址:192.168.138.100

第一階段排查,訪問地址不通

報錯:無法訪問此網站
192.168.138.100 拒絕了我們的連接請求。

確認nginx是否已打開(/usr/local/nginx/sbin/nginx)

第二階段排查

常見的數據庫未啟動、防火墻端口未放開。 附加文篇開頭命令

第三階段排查

  1. 運行jar看服務有無問題
java -jar test-1.0-SNAPSHOT.jar
  1. maven打包看是否可行
mvn clean package -Dmaven.test.skip=true
  1. 分布啟動項目調試,拉取代碼是否成功
git clone https://gitee.com/url--
  1. /usr/local/javaapp下的自動化部署腳本
chmod 777 testStart.sh #給予權限

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/diannao/84587.shtml
繁體地址,請注明出處:http://hk.pswp.cn/diannao/84587.shtml
英文地址,請注明出處:http://en.pswp.cn/diannao/84587.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

C 語言學習筆記

文章目錄 程序設計入門 --- C 語言第一周 程序設計與 C 語言1 計算機與編程語言&#xff1a;計算機怎么做事情的&#xff0c;編程語言是什么&#x1f4d2; 1.1 計算機的普遍應用 —— 離了它&#xff0c;現代人可能不會“活”了**&#x1f310; 科學計算&#xff1a;計算機的“…

服務器修改/home的掛載路徑

寫在前面&#xff1a;前段時間新裝了一臺服務器&#xff0c;/home目錄原本是掛在在系統盤/dev/sda4的分區下&#xff0c;但是系統盤的空間比較小&#xff0c;為了保證后續使用起來&#xff0c;不會遇到磁盤很快就占滿的情況&#xff0c;現在需要將 /home 獨立出來&#xff0c;掛…

刷機維修進階教程-----沒有開啟usb調試 如何在鎖定機型的撥號界面特殊手段來開啟ADB

有時候我們會遇到一些機型被屏幕鎖 賬號鎖等鎖定。無法進入系統界面。也沒有開啟usb調試的情況下如何通過一些操作來開啟adb調試。然后通過adb指令來禁用對應的app順利進入系統。以此來操作保數據等操作. 通過博文了解?????? 1??????----了解一些品牌機型鎖定狀態…

虛擬文件(VFS)

核心知識點&#xff1a;虛擬文件系統&#xff08;VFS&#xff09; 1. 通俗易懂的解釋 想象一下你家里的冰箱。你把食物放進去&#xff0c;不用管它是放在塑料盒里、玻璃罐里還是直接用保鮮膜包著&#xff0c;你只需要知道它在冰箱的哪個位置&#xff08;比如“蔬菜抽屜里”&a…

前后端聯調實戰指南:Axios攔截器、CORS與JWT身份驗證全解析

前言 在現代Web開發中&#xff0c;前后端分離架構已成為主流&#xff0c;而前后端聯調則是開發過程中不可避免的關鍵環節。本文將深入探討前后端聯調中的三大核心技術&#xff1a;Axios攔截器的靈活運用、CORS跨域問題的全面解決方案以及JWT身份驗證的安全實現。通過本文&…

Postman基礎操作

1.Postman是什么&#xff1f; Postman是接口測試的工具&#xff0c;簡單來說它能模擬瀏覽器對服務器的某個接口發起請求并接收響應數據。 1.1 Postman工作原理 2.Postman發送請求 2.1 發送GET請求 我們知道GET請求是沒用請求體的&#xff0c;所以我們需要將請求參數寫在Param…

Elasticsearch Synthetic _source

_source 字段包含索引時傳入的原始 JSON 文檔體。_source 字段本身不被索引&#xff08;因此不可搜索&#xff09;&#xff0c;但會被存儲&#xff0c;以便在執行獲取請求&#xff08;如 get 或 search&#xff09;時返回。 如果磁盤使用很重要&#xff0c;可以考慮以下選項&a…

Vue3 + Element Plus 實現用戶管理模塊

本文介紹一個使用 Vue3 Element Plus 實現的用戶與小組管理模塊&#xff0c;支持用戶的增刪改查&#xff08;CRUD&#xff09;和分頁管理&#xff0c;以及小組的新增和刪除功能&#xff0c;適用于管理后臺系統中的用戶權限管理場景。 一、項目簡介 該模塊具備以下功能&#…

Python應用“面向對象”小練習

大家好!面向對象編程是一種以 “對象” 為核心的編程思想。對象可以看作是具有特定屬性和行為的實體。例如&#xff0c;一個學生可以是一個對象&#xff0c;他的屬性包括姓名和年齡&#xff0c;行為可以是打招呼。? 代碼呈現: # 定義類和對象 class Student:def __init__(sel…

線性回歸原理推導與應用(八):邏輯回歸二分類乳腺癌數據分類

乳腺癌數據是sklearn中自帶的數據集&#xff0c;需要通過相關特征對是否患有乳腺癌進行分類。 數據清洗與建模 首先加載相關庫和相關數據 from sklearn.datasets import load_breast_cancer from sklearn.linear_model import LogisticRegression import numpy as np import…

nginx的一些配置的意思

1.用這個端口可以訪問到nginx 2.工作進程&#xff0c;設置成和cpu核心數一樣即可 3.每個工作進程的最大網絡連接數。 4.主機名稱 設置反向代理時&#xff0c;把server_name設置成ip。 5.反向代理進行轉發&#xff0c;localhost指的是nginx所在的機器。 關鍵字proxy_pass。 …

SID103S/D/Q-300nA, 軌至軌, CMOS 運算放大器替代SGM8141

概述 SID103系列產品是專注于超低功耗、軌至軌、CMOS運算放大器&#xff0c;最低工作電壓可以支持到1.4V&#xff0c;并且工作時每個通道僅消耗300nA的電流。特別適合穿戴式、獨立式等對功耗敏感的電池供電場景。 SID103系列產品擁有5kHz的增益帶寬積&#xff0c;外接500pF電…

十六進制字符轉十進制算法

十六進制與十進制對照 十六進制十進制00112233445566778899A10B11C12D13E14F15 十六進制與十進制區別 十六進制是滿16進1&#xff0c;十進制是滿10進1&#xff0c;這里要注意下區別&#xff0c;16進制的字符里面為什么是0-9沒有10&#xff0c;這里面進了一位&#xff0c;表示…

微軟技術賦能:解鎖開發、交互與數據潛力,共探未來創新路

在微軟 Build 2025 大會以及創想未來峰會上&#xff0c;微軟展示的一系列前沿技術與創新應用&#xff0c;不僅展現了其在科技領域的深厚底蘊與前瞻視野&#xff0c;更為開發者和企業帶來了前所未有的機遇與變革動力。 領馭科技作為微軟中國南區核心合作伙伴及 HKCSP 1T 首批授…

并發基礎|進程與線程

進程基礎 什么是進程&#xff1f; 為了實現并發的功能&#xff0c;引入了進程的概念。 ? 為了實現并發&#xff0c;需要引入多程序的環境&#xff0c;但是多程序的環境會造成一些單程序時不存在的問題&#xff0c;比如程序的之間沒有了封閉性&#xff0c;程序不可以連續的執…

鴻蒙倉頡開發語言實戰教程:自定義tabbar

大家周末好呀&#xff0c;今天繼續分享倉頡語言開發商城應用的實戰教程&#xff0c;今天要做的是tabbar。 大家都知道ArkTs有Tabs和TabContent容器&#xff0c;能夠實現上圖的樣式&#xff0c;滿足基本的使用需求。而倉頡就不同了&#xff0c;它雖然也有這兩個組件&#xff0c;…

LINUX526 回顧 配置ssh rsync定時備份(未完成)

配置SSH回顧&#xff1a; 1.關閉防火墻、selinux systemctl stop firewalld systemctl disable firewalld setenforce 0 vim /etc/selinux/config SELINUXdisable 2. 510 2.配置YUM源 我計劃配本地yum源 2.1 yum源備份 cd /etc/yum.repos.d tar -zcf repo.tar.gz *.repo …

hdc - Mac本環境配置

1. 安裝依賴工具 Homebrew 若未安裝 Homebrew&#xff0c;打開終端執行&#xff1a; OpenJDK 11 HDC 依賴 Java 環境&#xff0c;安裝 OpenJDK 11&#xff1a; 配置環境變量&#xff1a; 2. 安裝 DevEco Studio 下載&#xff1a;從華為開發者聯盟下載最新版 DevEco Studio。 …

項目三 - 任務8:實現詞頻統計功能

本項目旨在實現一個詞頻統計功能&#xff0c;通過讀取文本文件并利用Java編程技巧處理和分析文本數據。首先&#xff0c;使用BufferedReader逐行讀取文件內容&#xff0c;然后通過String.split(" ")方法將每行文本分割成單詞數組。接下來&#xff0c;采用HashMap來存…

Python - 文件部分

- 第 101 篇 - Date: 2025 - 05 - 26 Author: 鄭龍浩/仟墨 Python - 文件部分 學習時間: 2025-05-19 文章目錄 Python - 文件部分一 文件與路徑1 文本文件2 二進制文件3 編碼格式① 常見編碼格式② 指定編碼格式③ 最佳格式④ 處理編碼錯誤 4 絕對路徑5 相對路徑基本寫法返回…