日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

[云原生专题-59]:Kubesphere云治理-操作-分步部署Web业务平台RuoYi Cloud项目 - 手工上云部署实际过程全部操作步骤

發布時間:2023/12/16 编程问答 24 豆豆
生活随笔 收集整理的這篇文章主要介紹了 [云原生专题-59]:Kubesphere云治理-操作-分步部署Web业务平台RuoYi Cloud项目 - 手工上云部署实际过程全部操作步骤 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

作者主頁(文火冰糖的硅基工坊):文火冰糖(王文兵)的博客_文火冰糖的硅基工坊_CSDN博客

本文網址:https://blog.csdn.net/HiWangWenBing/article/details/123004798


目錄

集群規劃:

第一大步:MySQL微服務的部署、配置、初始化

第1步:MySQL微服務的部署

第2步:MySQL微服務庫的數據遷移(可選)

第3步:數據庫的初始化(可選之一)

第二大步:nacos微服務的部署、配置、初始化

第1步:nacos微服務的部署

第2步:nacos服務自身的配置文件的修改

第3步:Nacos測試

第三大步:Redis微服務的部署、配置、初始化

第1步:Redis微服務的部署

第2步:Redis微服務的配置(可選)

第3步:Redis微服務的初始化(無)

第四步:配置nacos中關于ruoyi微服務訪問數據庫所需要的信息

第1步:為ruoyi微服務指定訪問MySQL數據庫的信息

第2步:為Ruoyi微服務指定訪問Redis數據庫的信息

第五大步:部署Rouyi系統后臺微服務:ruoyi-xxx

第1步:修改bootstrap.yml配置文件(可選)

第2步:編譯微服務代碼,并打包成jar包

第3步:制作微服務的docker鏡像

第4步:發布微服務的docker鏡像

第5步:部署微服務的docker鏡像

第6步:測試部署的微服務

第六大步:部署Rouyi系統后臺管理系統UI:ruoyi-ui'

第1步: 編譯前修改配置文件的修改(可選)

第2步:編譯微服務目標代碼并打包

第3步:準備dockerfile和nginx鏡像模板

第4步:制作微服務的docker鏡像

第5步:發布微服務的docker鏡像

第6步:部署微服務的docker鏡像

第7步:測試部署的微服務

最終大匯總


集群規劃:

第一大步:MySQL微服務的部署、配置、初始化

第1步:MySQL微服務的部署

按照有狀態Service的方式部署MySQL:

[云原生專題-50]:Kubesphere云治理-操作-分步部署基于微服務的業務應用 - 數據庫中間件MySQL微服務部署過程_文火冰糖(王文兵)的博客-CSDN博客

備注:

  • MySQL數據訪問的用戶名和密碼是通過創建服務是的環境變量傳入的,默認的用戶名是root, 密碼可以通過如下的方式設定為"root"

  • MySQL數據庫,必須通過NodePort Service的方式,提供公網遠程訪問。
  • 云上MySQL數據庫可以部署多個實例。
  • 云上MySQL數據庫的實例可以動態的伸縮、相互負載均衡。
  • 云上MySQL數據庫可以相互容災,一個節點奔潰,可以自動遷移到其他節點上。

第2步:MySQL微服務庫的數據遷移(可選)

如果之前在單機版上運行了RuoYi Cloud項目,那么應該已經有了本地的MySQL數據庫,此時可以通過MySQL workbench工具,把本地MySQL數據庫的內容直接遷移到部署在“云”上的MySQL數據庫,輕松、簡單、快速。

??有三個schemas需要從本地數據庫導入到遠程剛剛部署的MySQL數據庫中。

  • ry-config:nacos微服務所需要的數據庫,用于管理注冊到其中業務相關的微服務。
  • ry-cloud:rouyi應用程序微服務所需要的數據庫,用于存放rouyi管理系統中的配置數。
  • ry-seata:ruoyi的分布式事務模塊數據庫

導入成功后,可以通過MySQL workbench遠程連接到遠程數據庫檢查數據庫的內容。

第3步:數據庫的初始化(可選之一)

通過MySQL workbench連接遠程的服務器,分布導入RuoYi-Cloud提供的幾個本地數據庫

  • ry-config:RuoYi-Cloud\sql\ry_config_20220114.sql? ? =》 for nacos
  • ry-cloud:RuoYi-Cloud\sql\ry_20210908.sql? ? ? ? ? ? ? ? ?=》?RuoYi的后臺管理數據庫
  • ry-cloud:RuoYi-Cloud\sql\quartz.sql? ? ? ? ? ? ? ? ? ? ? ? ? ?=》?RuoYi job調度數據庫
  • ry-seata:RuoYi-Cloud\sql\ry_seata_20210128.sql? ? ? =》RuoYi 分布式事務模塊

第二大步:nacos微服務的部署、配置、初始化

第1步:nacos微服務的部署

按照有狀態Service的方式部署nacos:

[云原生專題-55]:Kubesphere云治理-操作-分步部署基于微服務的業務應用 - 微服務注冊中間件Nacos的部署_文火冰糖(王文兵)的博客-CSDN博客

備注:

(1)部署多個nacos實例,比如3個pod

(2)通過LSB Service方式實現多個nacos的負載均衡

(3)LSB Service通過集群內部的域名,而不是IP地址,提供給集群內的微服務進行訪問(注冊)

(4)要掛載配置nacos的配置文件:

  • cluster.conf
  • application.properites

第2步:nacos服務自身的配置文件的修改

(1)cluster.conf配置的修改

# ip:port 200.8.9.16:8848 200.8.9.17:8848 200.8.9.18:8848

用每個nacos node實例的域名,替換IP地址,應用該配置文件后,nacos服務會自動重啟。

(2)application.Properties配置文件的修改

該配置文件,定義了nacos如何訪問其所需要的MySQL數據庫。

db.url.0=jdbc:mysql://127.0.0.1:3306/nacos?characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true&useUnicode=true&useSSL=false&serverTimezone=UTC db.user.0=root db.password.0=root
  • nacos訪問MySQL數據庫微服務的域名,替換本地IP地址:127.0.0.1·
  • nacos訪問MySQL數據庫微服務的端口號:3306
  • nacos訪問MySQL數據庫微服務的用戶名:root
  • nacos訪問MySQL數據庫微服務的用戶名:root

第3步:Nacos測試

http://公網地址:8848/nacos/index.html

第三大步:Redis微服務的部署、配置、初始化

redis服務器提供給ruoyi的微服務存儲業務數據

第1步:Redis微服務的部署

[云原生專題-51]:Kubesphere云治理-操作-分步部署基于微服務的業務應用 - 數據庫中間件Redis微服務部署過程_文火冰糖(王文兵)的博客-CSDN博客作者主頁(文火冰糖的硅基工坊):文火冰糖(王文兵)的博客_文火冰糖的硅基工坊_CSDN博客本文網址:https://blog.csdn.net/HiWangWenBing/article/details/122930680目錄前言:第1步:前置條件1.1 在Kubesphere選擇項目空間(名字空間)1.2在dockerhub找到Redis部署的所需要配置參數1.3Redis server部署的規劃1.4 預先在微服務外部創建PVC持久化卷1.5 預先在微服務外部創建..https://blog.csdn.net/HiWangWenBing/article/details/122930680

  • 需要掛載配置文件

第2步:Redis微服務的配置(可選)

修改配置文件,設定Redis訪問的密碼

可以不用設置Redis的訪問密碼

第3步:Redis微服務的初始化(無)

無初始化數據需求。

第四步:配置nacos中關于ruoyi微服務訪問數據庫所需要的信息

第1步:為ruoyi微服務指定訪問MySQL數據庫的信息

(1)確定使用到MySQL數據庫的Ruoyi微服務

  • ruoyi-job-dev.yml
  • ruoyi-system-dev.yml

(2)修改Ruoyi訪問MySQL數據庫訪問所需要的用戶名、密碼

  • MySQL數據庫的域名
  • MySQL數據庫的端口號
  • 用戶名:root
  • 密碼:root

由于微服務眾多,很多微服務需要訪問MySQL數據庫,如果在每個微服務上設置訪問MySQL數據庫的用戶名和密碼,效率自然低下,為此,采用了集中式的方式管理微服務訪問MySQL數據庫的用戶名和密碼,nacos是微服務的注冊中心,正好符合集中化管理微服務的職責,因此微服務訪問MySQL數據庫的用戶名和密碼的信息就可以由nacos統一進行管理,當然,nacos自身是不存放數據的,nacos把數據存放在MySQL數據庫倉庫中。

第2步:為Ruoyi微服務指定訪問Redis數據庫的信息

(1)確定使用到Redis數據庫的Ruoyi微服務

  • ruoyi-gateway
  • ruoyi-auth
  • ruoyi-system
  • ruoyi-gen
  • ruoyi-job

(2)修改對應的yml文件

  • redis服務的域名,默認是localhost
  • port:6379 (默認)
  • 登錄密碼:root (可選設置,默認為空)

第五大步:部署Rouyi系統后臺微服務:ruoyi-xxx

第1步:修改bootstrap.yml配置文件(可選)

指定Nacos域名和端口號。

第2步:編譯微服務代碼,并打包成jar包

采用IntelliJ IDEA集成開發環境的maven工具進行編譯、測試、驗證

?(1)入口:Maven(可以執行軟件發布的流水線操作,不僅僅是build)

(2)在ruoyi/Lifecycle操作,這里對所有的模塊執行指定的操作

(3)選clean、validate、compile、test、pacakge

(4)執行運行

  • clean:清除編譯過程中的目標文件
  • validate:檢查環境
  • compile:對每個模塊進行編譯
  • test:單元測試
  • pacakge:把java的目標代碼打包成jar包,可以在docker中執行的jar目標文件

?以gateway為例,生成的jar文件在:

F:\MySource\gitee\RuoYi-Cloud\ruoyi-gateway\target\ruoyi-gateway.jar

第3步:制作微服務的docker鏡像

(1)docker鏡像制作的服務器選擇

docker鏡像的制作需要有docker的環境,可以在windows下進行,也可在Linux編譯服務器上執行,也可以在部署ruoyi和K8S的Linux主機上(天然自帶docker環境),如果是在遠程的Linux服務器上,需要通過sfpt把制作鏡像所需要的輸入文件,傳送到服務器上。

(2)準備輸入目錄和dockerfile

ruoyi為構建docker鏡像提供了目錄結構和初始的dockerfile,以gateway微服務為例:

RuoYi-Cloud\docker\ruoyi\gateway

# 基礎鏡像 =》 采用java8 jre環境,也可以使用待調試信息的java8 jar環境 FROM openjdk:8-jre# author =》作者 MAINTAINER ruoyi# 掛載目錄 =》 創建jar目標文件在docker鏡像中的位置 VOLUME /home/ruoyi# 創建目錄 =》 生成的docker鏡像中,存放jar文件的目錄 RUN mkdir -p /home/ruoyi# 指定路徑 》 指定存放jar文件的目錄 WORKDIR /home/ruoyi# 復制jar文件到路徑 =》 輸入文件的路徑 =》 docker鏡像中jar文件的位置 COPY ./jar/ruoyi-gateway.jar /home/ruoyi/ruoyi-gateway.jar# 啟動網關服務 =》 如何通過docker啟動,通過WORKDIR目錄和文件名找到docker中的jar文件 ENTRYPOINT ["java","-jar","ruoyi-gateway.jar"]

(3)準備輸入文件:jar

把RuoYi-Cloud\ruoyi-gateway\target\ruoyi-gateway.jar 文件,手工拷貝到

? ? ?RuoYi-Cloud\docker\ruoyi\gateway\jar目錄中

針對其他jar文件,執行相同的操作:

(4)通過sftp工具,把ruoyi目錄上傳到制作docker鏡像的服務器上。

備注:如果直接在windows上打包,這一步則可以省略。

(5)在制作docker機器的服務器上執行:

$ cd ruoyi/ruoyi-gateway$ docker build -t ruoyi-gateway:v1.0 -f Dockerfile .

依次,在每個目錄中執行上述命令,生成各自的docker鏡像。

(6)檢查生成的鏡像

$ docker images |grep ruoyi

第4步:發布微服務的docker鏡像

可以把鏡像發布到docker hub服務或阿里云鏡像服務器上。

(1)注冊賬號(免費個人空間)

(2)創建倉庫或名字空間, 用于存儲鏡像

?(3)通過docker命令行登錄到鏡像服務器

docker login --username xxxxx register.cn-hangzhou.aliyuncs.com

(4)給鏡像打標簽tag

docker tag [ImageId] registry.cn-hangzhou.aliyuncs.com/lyf_ruoyi/ruoyi-gateway:[鏡像版本號]

依次為每個鏡像打標簽。。。。。

(5)推送鏡像

docker push registry.cn-hangzhou.aliyuncs.com/lyf_ruoyi/ruoyi-gateway:[鏡像版本號]

一次發布每個鏡像。。。。。。。

(6)檢查發布的鏡像

在docker hub服務或阿里云鏡像服務器的web頁面檢查發布的鏡像是否上傳成功 。

第5步:部署微服務的docker鏡像

共性:

  • 以無狀態Service的方式部署如下的鏡像
  • 無外網訪問
  • 部署單個服務前,必須確認對應的nacos配置文件的設置是否正確(MySQL和Redis服務器)
  • mount配置文件:bootstrap.yml配置文件,指定Nacos域名和端口號

依次部署:

  • ruoyi-vistual-monitor
  • ruoyi-system
  • ruoyi-job
  • ruoyi-gateway
  • ruoyif-file
  • ruoyi-auth

第6步:測試部署的微服務

在nacos管理終端中,查看服務每個服務是否注冊成功。

http://公網地址:8848/nacos/index.html

第六大步:部署Rouyi系統后臺管理系統UI:ruoyi-ui'

第1步: 編譯前修改配置文件的修改(可選)

RuoYi-Cloud\ruoyi-ui\vue.configtarget: `http://localhost:8080`, => 修改成網關的域名

第2步:編譯微服務目標代碼并打包

ruoyi-ui并不是jar文件,而是各個頁面的cs的配置文件。

該鏡像的基礎是nginx鏡像,只要把這些頁面的配置提供給nginx引擎,頁面就可以launch起來了。

cd RuoYi-Cloud\ruoyi-ui# 開發環境 nmp run build:dev# 生成環境 nmp run build:prod

輸出制品包:

RuoYi-Cloud\ruoyi-ui\dist

輸出是一組頁面配置文件,包括首頁index.html

dist目錄以及這些配置文件,即為docker鏡像制作的輸入文件。

第3步:準備dockerfile和nginx鏡像模板

(1)

ruoy已經為我們準備好了nginx鏡像模板,位置在:RuoYi-Cloud\docker\nginx

我們只需要把編譯打包出來dist目錄中的內容,到此目錄中的子目錄即可:

源? ?:RuoYi-Cloud\ruoyi-ui\dist

目的:RuoYi-Cloud\docker\nginx\html\dist\

(2)修改nginx配置文件 (可選,后續可以通過mount配置文件的方式,在docker中修改)

\RuoYi-Cloud\docker\nginx\conf\nginx.conf

server {listen 80;server_name localhost; # 修改成“-”,表明不限制接口proxy_pass http://ruoyi-gateway:8080/; # =》 rouyi-gateway的域名

第4步:制作微服務的docker鏡像

$ cd ruoyi/ruoyi-ui$ docker build -t ruoyi-ui:v1.0 -f Dockerfile .

第5步:發布微服務的docker鏡像

docker login --username xxxxx register.cn-hangzhou.aliyuncs.comdocker tag [ImageId] registry.cn-hangzhou.aliyuncs.com/lyf_ruoyi/ruoyi-ui:[鏡像版本號]docker push registry.cn-hangzhou.aliyuncs.com/lyf_ruoyi/ruoyi-gateway:[鏡像版本號]

第6步:部署微服務的docker鏡像

選擇nodePort向集群外的公網暴露給服務,通過公網訪問ruoyi的后臺管理。

?

第7步:測試部署的微服務

?

  • 在打包的時候修改后端的配置文件:bootstrap.yml
  • 在打包的時候修改前端的配置文件: RuoYi-Cloud\ruoyi-ui\vue.config
  • 在打包的時候修改nginx的配置文件:RuoYi-Cloud\docker\nginx\conf\nginx.conf

最終大匯總

?至此,這個ruoyi服務的手工上云過程就完成了!


作者主頁(文火冰糖的硅基工坊):文火冰糖(王文兵)的博客_文火冰糖的硅基工坊_CSDN博客

本文網址:https://blog.csdn.net/HiWangWenBing/article/details/123004798

總結

以上是生活随笔為你收集整理的[云原生专题-59]:Kubesphere云治理-操作-分步部署Web业务平台RuoYi Cloud项目 - 手工上云部署实际过程全部操作步骤的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。