Liunx前后端項目部署(小白也可安裝)

文章目錄

  • 一、CentOS服務器的安裝
  • 二、jdk安裝
  • 三、Tomcat安裝
  • 四、MySQL安裝、
  • 五、nginX安裝
  • 六、多個項目負載均衡,部署后端項目
  • 七、前端項目部署

一、CentOS服務器的安裝

選擇liunx,下面選擇CentOS 7
```![在這里插入圖片描述](https://img-blog.csdnimg.cn/direct/331d64c559cd4ed4a1614dff8053d387.png)```cpp
白色為選擇,選擇第一個

在這里插入圖片描述

其他不用動只要設置網絡

在這里插入圖片描述

使用ip a查看liunx的ip地址

在這里插入圖片描述

二、jdk安裝

第一步:將liunx項目部署文件全部放到/opt下面

在這里插入圖片描述

第二步:用cd 轉到/usr/local下面,在用mkdir新建一個文件夾java,用來存放解壓后文件的存放位置

在這里插入圖片描述

第三步:在用cd,轉到/opt文件夾下面解壓
命令:tar -axvf jdk-8u151-linux-x64.tar.gz -C /usr/local/java

在這里插入圖片描述

第四步:我們用命令進入vim /etc/profile
如果我們沒有vim的話我們用命令
yum -y install vim*進行一個下載

在這里插入圖片描述

第五步:進入之后用i模式進入編輯,劃到最下面加上命令:#java environment
export JAVA_HOME=/usr/local/java/jdk1.8.0_151
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib
export PATH=${JAVA_HOME}/bin:$PATH

在這里插入圖片描述

第六步:最后一步,我們用命令
source /etc/profile將我們的環境變量生效
然后再用java -version查看jdk是否安裝成功

在這里插入圖片描述

三、Tomcat安裝

第一步:我們用cd回到/opt下面用命令
tar -zxvf apache-tomcat-8.5.20.tar.gz -C /usr/local/java
將我們的tomcat解壓到我們創建的java下面

在這里插入圖片描述

第二步:我們到java目錄下面,用cd進入到apache-tomcat-8.5.20/bin/
下面用
./startup.sh啟動tomcat

在這里插入圖片描述

第三步:進行一個8080防火墻的端口開放
命令:
#開放端口
firewall-cmd --zone=public --add-port=8080/tcp --permanent
#跟新防火墻規則
firewall-cmd --reload
#防火墻列表
firewall-cmd --zone=public --list-ports

在這里插入圖片描述

第五步:我們輸入ip這樣我們就成功了
```![在這里插入圖片描述](https://img-blog.csdnimg.cn/direct/40fcd8a9aa6647c9817c374b73775b68.png)```cpp
第六步:我們如果要是tomcat自啟動的的話我們需要把
apache-tomcat-8.5.20/bin/catalina.sh 復制到/etc/init.d文件夾里面,在用mv將startup.sh改成tomcat
命令:
cp /usr/local/java/apache-tomcat-8.5.20/bin/catalina.sh /etc/init.d

在這里插入圖片描述

第七步:我們用vim tomcat進入進入到里面添加
命令:
JAVA_HOME=/usr/local/java/jdk1.8.0_151
CATALINA_HOME=/usr/local/java/apache-tomcat-8.5.20
然后再這個# Better OS/400 detection: see Bugzilla 31132的命令上面放下面的這兩個命令
#chkconfig: 23456 10 90
#description: tomcat service

在這里插入圖片描述

第八步:用chkconfig --add tomcat這個命令把
tomcat加進服務
在用reboot重新啟動

在這里插入圖片描述

第九步:這樣我們就可以開機自啟動了

在這里插入圖片描述

四、MySQL安裝、

第一步:查看liunx是否存在MySQL數據庫查看命令:rpm -qa|grep mariadb如果存在用該命令刪除: rpm -e --nodeps mariadb-libs-5.5.68-1.el7.x86_64,刪除之后再次查看

在這里插入圖片描述

第二步:我們回到java目錄下面,應mkdir創建一個mysql-5.7的一個文件夾用來存放mysql解壓后的文件,在回到/opt下面,用命令:
tar -xvf mysql-5.7.35-1.el7.x86_64.rpm-bundle.tar -C /usr/local/java/mysql-5.7/
解壓到我們剛剛參加的那個文件夾下面

在這里插入圖片描述

第三步:在用cd進入到mysql-5.7里面
按照順序解壓
rpm -ivh mysql-community-common-5.7.35-1.el7.x86_64.rpm
rpm -ivh mysql-community-libs-5.7.35-1.el7.x86_64.rpm
rpm -ivh mysql-community-client-5.7.35-1.el7.x86_64.rpm
rpm -ivh mysql-community-server-5.7.35-1.el7.x86_64.rpm

在這里插入圖片描述

第五步:如果我們解壓到第4個出現了上面的錯誤我們首先使用命令:
yum install net-tools -y進行下載然后再執行命令yum install perl -y進行下載,都下載完成之后就再次解壓第4

在這里插入圖片描述

第六步:我們先使用 systemctl start mysqld進行mysql的一個啟動,然后再使用
systemctl enable mysqld.service這個命令進行一個mysql的自啟動

在這里插入圖片描述

第七步:我們使用命令:
grep "password" /var/log/mysqld.log
讓他顯示出來數據庫的默認密碼然后再用mysql -u root -p使用默認密碼登錄進去

在這里插入圖片描述

第八步:在我們更改密碼的時候我們要去修改mysql的密碼規則命令:
set global validate_password_policy=0;
set global validate_password_length=4;
設置完成之后我們再修改密碼
set password = password("123456");

在這里插入圖片描述

第九步:我們要允許外部訪問的要給它進行一個授權命令:
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '123456' WITH GRANT OPTION;
然后刷新
FLUSH PRIVILEGES;
然后退出
exit

在這里插入圖片描述

10步:我們退出mysql之后要被外部訪問我們就需要對3306進行防火墻的開放命令:
#開放端口
firewall-cmd --zone=public --add-port=3306/tcp --permanent
#跟新防火墻規則
firewall-cmd --reload
#防火墻列表
firewall-cmd --zone=public --list-ports

在這里插入圖片描述

11步:我們用連接工具測試輸入ip加上自己的剛剛修改的密碼

在這里插入圖片描述

五、nginX安裝

第一步:我們回到/opt下面用命令將nginx解壓tar -xvf nginx-1.13.7.tar.gz  -C /usr/local/java/

在這里插入圖片描述

第二步:解壓完成之后我們再回到/opt下面用命令: yum -y install gcc zlib zlib-devel pcre-devel openssl openssl-devel
一鍵下載4個依賴

在這里插入圖片描述

第三步:我們進入到nginx里面去安裝我們的ssl證書命令:./configure --with-http_stub_status_module --with-http_ssl_module
安裝完成之后我們再安裝make命令:make && make install

在這里插入圖片描述

第四步:當我們下載好了之后會在local文件夾下面生成一個nginx文件,我們cd進去,在進入到sbin里面去

在這里插入圖片描述

第五步:我們用./nginx啟動nginx,在開放80端口命令:
firewall-cmd --zone=public --add-port=80/tcp --permanent
#跟新防火墻規則
firewall-cmd --reload
#防火墻列表
firewall-cmd --zone=public --list-ports

在這里插入圖片描述

第六步:輸入我們的ip地址出現這樣子的我們的nginx就安裝好了

在這里插入圖片描述

第七步:安裝完成之后我們cd進入到cd /etc/rc.d/下面找到rc.local用vim編輯它

在這里插入圖片描述

第八步:進去之后我們放入
/usr/local/nginx/sbin/nginx
位置是sbin下面的nginx文件,上面的是路徑

在這里插入圖片描述

10步:將我們的rc.local變成可執行文件

在這里插入圖片描述

11步:這個我們就可以開啟服務器自啟動了

在這里插入圖片描述

六、多個項目負載均衡,部署后端項目

第一步:我們到java目錄下面用命令cp -r apache-tomcat-8.5.20/ apache-tomcat-8.5.20-8081/復制兩個tomcat

在這里插入圖片描述

第二步:我們進入這個8081的端口cd進入到/conf里面找到server.xml這個文件用vim編輯

在這里插入圖片描述

第三步:把所有的端口都往前加一位

在這里插入圖片描述

第四步:我們如果要是tomcat自啟動的的話我們需要把
apache-tomcat-8.5.20-8081/bin/catalina.sh 復制到/etc/init.d文件夾里面,在用mv將startup.sh改成tomcat-8081
命令:
cp /usr/local/java/apache-tomcat-8.5.20-8081/bin/catalina.sh /etc/init.d
記得開放8081端口號

在這里插入圖片描述

第五步:我們用vim tomcat進入進入到里面添加
命令:
JAVA_HOME=/usr/local/java/jdk1.8.0_151
CATALINA_HOME=/usr/local/java/apache-tomcat-8.5.20-8081
然后再這個# Better OS/400 detection: see Bugzilla 31132命令的上面放下面的這兩個命令
#chkconfig: 23456 10 90
#description: tomcat service

在這里插入圖片描述

第六步:用chkconfig --add tomcat這個命令把
tomcat加進服務
然后再使配置文件進行一個生效
在用reboot重新啟動

在這里插入圖片描述

第七步:這樣我們就可以開機自啟動了

在這里插入圖片描述

第八步:我們進入到在/usr/local/nginx/conf這個目錄下,在右邊用記事本打開這個文件添加我們的負載均衡命令:```![在這里插入圖片描述](https://img-blog.csdnimg.cn/direct/91b6dab0aeb342acbc94e87925c5c10b.png)```cppupstream  tomcat_list {  #服務器集群名字server    127.0.0.1:8080  weight=1;   #服務器1   weight是權重的意思,權重越大,分配的概率越大。server    127.0.0.1:8081  weight=1; #服務器2   weight是權重的意思,權重越大,分配的概率越大} 在文件夾里面放上什么的命令

在這里插入圖片描述

location / {root   html;proxy_pass   http://tomcat_list#index  index.html index.htm;}這個也同樣放進去.注意是這個proxy_pass   http://tomcat_list

在這里插入圖片描述

第九步:進入/usr/local/nginx/sbin目錄下
重啟nginx服務
命令:
./nginx -s reload

在這里插入圖片描述

10步:創建一個數據庫將腳本倒進去

在這里插入圖片描述

11步:將我們的war包放進webapp里面
路徑:
/usr/local/java/apache-tomcat-8.5.20-8081/webapps
注意兩個tomcat都要放

在這里插入圖片描述

12步:將兩個tomcat都關閉一下再重新開啟
命令:./shutdown.sh./startup.sh

在這里插入圖片描述

13步:我們能拿到后臺接口提供的數據我們的后端就算部署成功了
訪問路徑:http://192.168.88.132:8080/T216_SSH/vue/treeNodeAction.action

在這里插入圖片描述

七、前端項目部署

第一步:我們到/usr/local下面創建一個mypro的文件夾用來存放前端的項目壓縮包。

在這里插入圖片描述

第二步:由于前端是zip文件我們要去下載的一個解壓命令:
yum install -y unzip

在這里插入圖片描述

第三步:然后解壓文件夾命令:
unzip blog.zip

在這里插入圖片描述

第四步:將解壓到路徑配置到在里面去把圖中的地方替換掉 命令:server {listen       80;            #監聽80端口,可以改成其他端口#server_name  localhost;    #當前服務的域名server_name  www.zking.com; #當前服務的域名(虛擬域名也可以)root         /usr/local/mypro/dist;      #將要訪問的網站的根目錄,nginx節點會自動繼承父節點的配置;這里放到/usr/local/*,放到其他路徑下會有權限相關問題;必要的時候配置Nginx.conf的user為root

在這里插入圖片描述

第五步:跟前面的一個把圖中的這個替換成下面的命令:location / {#該句代碼是為解決history路由不能跳轉的問題,在vue-router官網有介紹 try_files $uri $uri/  /index.html;}location  ^~/api/ {#^~/api/表示匹配前綴是api的請求,proxy_pass的結尾有/, 則會把/api/*后面的路徑直接拼接到后面,即移除apiproxy_pass http://tomcat_list/;}

在這里插入圖片描述

第六步:在C:\Windows\System32\drivers\etc\hosts中增加映射關系

在這里插入圖片描述

一定要像我這樣子配置要不然會報錯

在這里插入圖片描述

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

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

相關文章

oracle安裝RAC手動配置互信

cd $ORACLE_HOME/sshsetup grid的話是GI_HOME(一個節點上跑即可) ./sshUserSetup.sh -user oracle -hosts "vma vmb" -advanced -noPromptPassphrase集群(oracle,grid都要做) node1: [oracle node1~]$ ssh-keygen -t rsa //…

一文講透:可視化大屏中3D元素的融入和使用方法

在可視化大屏中,3D元素融入的越來越多,貝格前端工場經常接到這類項目,很多老鐵認為加個3D效果很easy,其實不然,工序非常復雜,總結如下。 一、什么是3D技術 三維展示(3D展示)是指使用…

[BUUCTF]-Reverse:reverse3解析

查看ida 從下圖的/3和*4可以推斷得出來是base64加密。 ida里大致意思就是我們輸入的字符串經過base64加密,循環遞減,最后等于str2,那我們輸入的字符串就是flag。 完整exp: import base64 liste3nifIH9b_CndH print(len(list))fl…

循環簡介和基本運算符

根據C Primer Plus第五章進行學習 文章目錄 循環簡介基本運算符 1.賦值運算符&#xff1a;2.加法運算符&#xff1a;3.減法運算符&#xff1a;-2.乘法運算符&#xff1a;*總結 1.循環簡介 如下代碼可以體現不使用循環的局限性&#xff1a; #include<stdio.h> #define AD…

什么是端口,為什么要有端口

一.端口概念 在網絡技術中&#xff0c;端口&#xff08;Port&#xff09;大致有兩種意思&#xff1a;一是物理意義上的端口&#xff0c;比如&#xff0c;ADSL Modem、集線器、交換機、路由器用于連接其他網絡設備的接口&#xff0c;如RJ-45端口、SC端口等等。二是邏輯意義上的端…

【leetcode熱題】楊輝三角 II

難度&#xff1a; 簡單通過率&#xff1a; 41.1%題目鏈接&#xff1a;. - 力扣&#xff08;LeetCode&#xff09; 題目描述 給定一個非負索引 k&#xff0c;其中 k ≤ 33&#xff0c;返回楊輝三角的第 k 行。 在楊輝三角中&#xff0c;每個數是它左上方和右上方的數的和。 示…

Doris實戰——金融壹賬通指標中臺的應用實踐

目錄 前言 一、業務痛點 二、早期架構挑戰 三、架構升級 四、一體化指標數據平臺 4.1 構建指標體系 4.2 構建指標平臺功能 五、Doris指標應用實踐 六、未來規劃 原文大佬的這篇指標中臺的應用實踐有借鑒意義&#xff0c;這里摘抄下來用作學習和知識沉淀。 前言 在搭建…

linux學習-C語言流程控制

目錄 順序結構 分支結構 關系預算符 邏輯運算符 if分支 簡單分支 階梯分支 嵌套分支&#xff1a; switch分支 基本形式 switch嵌套 順序結構 括號>單目運算符>雙目運算符>三目運算符>賦值運算符>逗號運算符> 雙目運算符&#xff1a;算數運算…

獵冰超前點播--大結局

第18集 鏈接&#xff1a;https://pan.baidu.com/s/1cHPiioQsQluWQQtP5CC_aA?pwdyyds 提取碼&#xff1a;yyds --來自百度網盤超級會員V3的分享 第17集 鏈接&#xff1a;https://pan.baidu.com/s/1QQD5xX7U9t6W4-xcjVkQFg?pwdyyds 提取碼&#xff1a;yyds --來自百度網…

知識積累(三):深度學習相關概念(查看檢索時看到)

文章目錄 1. 知識蒸餾2. 可微搜索索引&#xff08;DSI&#xff09;參考資料 在找論文時&#xff0c;發現的相關概念。 1. 知識蒸餾 知識蒸餾&#xff08;knowledge distillation&#xff09;是模型壓縮的一種常用的方法&#xff0c;不同于模型壓縮中的剪枝和量化&#xff0c;知…

藍禾,三七互娛,順豐,康冠科技,金證科技24春招內推

藍禾&#xff0c;三七互娛&#xff0c;順豐&#xff0c;康冠科技&#xff0c;金證科技24春招內推 ①藍禾 【崗位】運營類、設計類、研發類&#xff0c;供應鏈類&#xff0c;職能等 【一鍵內推】https://lanhevip.jobs.feishu.cn/index/m/?external_referral_codeT1KYX4B 【校園…

MySQL之索引詳解

華子目錄 索引概述優缺點 索引的原理索引的設計原則索引結構B-tree&#xff08;多路平衡查找樹&#xff09;BtreeHash 為什么InnoDB存儲引擎選擇Btree&#xff1f;索引分類聚集索引選取規則 單列索引和多列索引前綴索引創建索引1.創建表時創建索引2.在已經存在的表上創建索引3.…

微店商品詳情 API 的調用頻率有限制嗎?

微店&#xff08;Weidian&#xff09;的商品詳情 API的調用頻率限制可能會因具體的 API 版本和商家的設置而有所不同。為了確保 API 的穩定性和公平使用&#xff0c;大多數 API 都會設置調用頻率限制&#xff0c;通常這些限制是以每秒查詢率&#xff08;QPS&#xff09;或每日請…

逆變器專題(16)-構網型逆變器與跟網型逆變器

相應仿真原件請移步資源下載 現如今&#xff0c;常規的逆變器控制方法主要分為跟網型以及構網型逆變器 跟網型逆變器即常規意義上的并網逆變器&#xff0c;即輸出電流直接接入大電網&#xff0c;通常為電流源型逆變器&#xff0c;其輸出電流的相位與頻率時隨著電網電壓而隨時進…

基于光流法以及背景減除法的降雪檢測項目知識點總結

項目總結目錄 一、算法部分1.光流法部分知識點2.python代碼與大華攝像頭之間的實時調用3.兩個方法的代碼 一、算法部分 1.光流法部分知識點 像素坐標系與直角坐標系之間的轉換&#xff0c;之后計算角度。 其中光流法通過判斷運動目標的角度來識別是否為降雪&#xff0c;通過…

我在使用 Copilot 時遇到了許可證驗證錯誤。

如果使用的是 Copilot&#xff0c;并收到以下錯誤消息&#xff0c;請按以下步驟進行操作&#xff1a; We encountered a problem validating your Copilot license. For more information, see https://aka.ms/copilotlicensecheck 請確保使用的是正確的帳戶 請確保已使用具…

神經網絡系列---卷積

文章目錄 卷積神經網絡卷積轉置卷積 卷積核和反卷積的三種實現方式卷積的次數計算 卷積神經網絡 在神經網絡的卷積層中&#xff0c;向下取整&#xff08;Floor&#xff09;是一種常用的策略&#xff0c;特別是在處理輸出尺寸不是整數的情況時。當你計算出卷積層輸出的尺寸&…

UnityAPI的學習——Mathf類

Mathf類是Unity中的數學類&#xff0c;屬于結構體類型&#xff0c;只有靜態屬性和靜態方法&#xff0c;即不可實例化。 Mathf類靜態屬性 在Mathf類中&#xff0c;涉及的靜態屬性有Deg2Rad、Rad2Deg和Infinity&#xff0c;其中屬性Deg2Rad和Rad2Deg功能相似。 1、Deg2Rad屬性…

UE5 C++ 發射子彈發射(Projectile)

一.相關藍圖的練習&#xff0c;在我之前的文章中射擊子彈案例-CSDN博客 本篇使用C實現 1.創建C類 MyBullet,在MyBullet.h中包含相關頭文件 #include "CoreMinimal.h" #include "GameFramework/Actor.h" #include "Components/StaticMeshComponent.…

SpringBoot 注解全解析

注解的優勢&#xff1a; 采用純 java 代碼&#xff0c;不在需要配置繁雜的 xml 文件在配置中也可享受面向對象帶來的好處類型安全對重構可以提供良好的支持減少復雜配置文件的同時亦能享受到 springIoC 容器提供的功能 1. 常用的Spring Boot注釋及其用途和示例 1&#xff09;S…