最近單位在搭建統一許可權管理的系統,在網上看到了若依的開源系統,若依管理系統基於Spring boot搭建的許可權管理系統。
一、基本介紹
1.1 架構圖
RuoYi架構圖
1.2 內建功能
使用者管理:使用者是系統操作者,該功能主要完成系統使用者配置。
部門管理:配置系統組織機構(公司、部門、小組),樹結構展現支援資料許可權。
崗位管理:配置系統使用者所屬擔任職務。
選單管理:配置系統選單,操作許可權,按鈕許可權標識等。
角色管理:角色選單許可權分配、設定角色按機構進行資料範圍許可權劃分。
字典管理:對系統中經常使用的一些較為固定的資料進行維護。
引數管理:對系統動態配置常用引數。
通知公告:系統通知公告資訊釋出維護。
操作日誌:系統正常操作日誌記錄和查詢;
系統異常資訊日誌記錄和查詢。
登入日誌:系統登入日誌記錄查詢包含登入異常。
線上使用者:當前系統中活躍使用者狀態監控。
定時任務:線上(新增、修改、刪除)任務排程包含執行結果日誌。
程式碼生成:前後端程式碼的生成(java、html、xml、sql)支援CRUD下載 。
系統介面:根據業務程式碼自動生成相關的api介面文件。
服務監控:監視當前系統CPU、記憶體、磁碟、堆疊等相關資訊。
線上構建器:拖動表單元素生成相應的HTML程式碼。
連線池監視:監視當前系統資料庫連線池狀態,可進行分析SQL找出系統性能瓶頸。
二、環境準備
2.1 nacos
在nacos的官網下載,解壓完成後,以供後期使用。
2.2 mysql
在官方文件中,mysql版本最好為5。7+,mysql5。6以下存在datetime(0)無法匯入的問題,可能需要自行替換(0)->‘’
mysql的安裝過程在這裡,就不在額外贅述,大家可以查詢網上資料直接安裝mysql資料庫。
2.3 redis
由於,現在redis不在支援windows作業系統,將redis安裝在linux的虛擬機器上,方便直接操作。
redis的安裝過程在這裡,就不在額外贅述,大家可以查詢網上資料直接安裝redis資料庫。
推薦:
在這裡給大家推薦一款redis 圖形頁面工具-
RedisDesktopManager
,大家可以偷懶不用敲命令,就能方便檢視redis資料
2.4 yarn
在
yarn官網下載[1]
yarn安裝包,直接雙擊執行即可
在安裝yarn之後,執行yarn命令,會出現下面的問題:
yarn : 無法將“yarn”項識別為 cmdlet、函式、指令碼檔案或可執行程式的名稱。請檢查名稱的拼寫,如果包括路徑,請確保路徑正確,然後再試一次。
無法將“yarn”項識別為 cmdlet、函式、指令碼檔案或可執行程式的名稱
感謝網友的的
解決方法[2]
:
以管理員身份開啟PowerShell,執行以下命令 set-ExecutionPolicy RemoteSigned
並設定淘寶映象
yarn config set registry https://registry。npm。taobao。org/
2.5 host檔案修改
需要在C:\Windows\System32\drivers\etc目錄下的hosts檔案中增加一下內容:
127。0。0。1 eureka7001。com127。0。0。1 gateway。com
推薦:
在這裡給大家推薦一個款軟體
SwitchHosts!
,是一款非常方便切換host的開源軟體
三、部署後端微服務
3.1 獲取程式碼
若依後端程式碼採用採用Spring Boot、Spring Cloud & Alibaba,註冊中心、配置中心選型Nacos,許可權認證使用OAuth2,流量控制框架選型Sentinel。
git clone -b nacos https://gitee。com/zhangmrit/ruoyi-cloud。git
3.2 修改相關配置檔案
3.2.1 匯入nacos檔案,並啟動nacos
建立nacos資料庫
匯入nacos資料指令碼 執行sql\nacos。sql檔案,將相關配置檔案匯入nacos資料庫
修改nacos配置檔案 修改nacos的配置檔案%nacos_home%\conf\application。properties,使其單機模式支援mysql,只需要將該檔案中
啟動nacos ,以單機的方式啟動nacos。
startup。cmd -m standalone
3.2.2 建立ry_cloud資料庫
建立ry_cloud資料庫,執行sql\ry_cloud_0115。sql(其中,具體檔案版本日期,以最新程式碼為準),將相關資料匯入到ry_cloud庫中
3.2.3 建立activiti資料庫
建立activiti資料庫 執行sql\activiti。sql,該資料庫為ruoyi-activiti服務所需要的資料庫
修改ruoyi-activiti中resources\bootstrap。yml檔案中資料庫連結內容
3.3 修改資料庫和redis配置檔案
在nacos管理系統,點選配置管理 -> 配置列表功能,選擇需要修改的配置引數,點選編輯,根據自己的配置引數,修改相應的引數。 以dev環境為例,需要修改redis配置引數的檔案為:
ruoyi-auth-dev。ymlruoyi-gateway-dev。ymlruoyi-system-dev。yml
redis修改內容
需要修改mysql資料庫配置引數的檔案為:
ruoyi-system-dev。ymlruoyi-gen-dev。yml
mysql引數修改內容
RuoYI在引數中配置了主從訪問機制,其中從庫資料庫預設關閉,在本地啟動時,未修改從庫資料來源的相關資訊
3.4 使用idea開啟相關程式
點選 File -> Open 選擇下載程式碼檔案中的pom。xml
載入專案之後,專案需要下載相關的依賴,就是漫長的等待,這個等待的時間會根據你是否有快取、你的網路、你的電腦,可能還有你的人品來決定。
3.5 啟動後端微服務
經過漫長的等待,接下來就是激動人心的時刻,後端應用的最後一步,啟動後端微服務。後臺微服務對應用的啟動順序沒有要求,啟動每一個應用即可,需要啟動應用為:
gatewayauthsystemactgen 程式碼生成 可選dfs 檔案上傳 可選
程式啟動完成後,idea中service中看到已經啟動的微服務
可以在nacos的管理系統中看到相關服務
四、部署前端
4.1 獲取程式碼
若依前端的程式碼使用ant design vue框架,從ant Design vue pro專案fork後,增加相關程式碼,完成若依前端程式。
git clone https://gitee。com/zhangmrit/ruoyi-ant。git
4.2 修改配置檔案
在前端的程式中,需要檢視vue。confog。js中閘道器的配置是否正確,需要修改下圖中target的內容與後端閘道器的請求IP和埠保持一致。
在最新更新的程式碼中,後端的閘道器介面為9527,與文件中的寫道的8080不一樣,而且,最新的程式碼中相關引數已經與後端的配置保持一致,此步可以省略,此處為方便後續修改閘道器引數,對應修改前端訪問引數,特別說明。
4.3 啟動程式
從gitee更新的程式碼後,只需簡單的執行幾個命令就可以完成即可啟動。
進入ruoyi-ant目錄
# 進入ruoyi-ant目錄cd ruoyi-ant
安裝相關依賴
# 安裝相關依賴yarn install
開發模式啟動
#開發模式啟動yarn run serve
啟動成功 在這裡沒有使用cmd命令視窗啟動,使用了PowerShell進行啟動,大家可以根據自己的習慣選擇具體的命令視窗,效果都是一樣的。
在命令視窗中顯示App running at http://localhost:8000/,在瀏覽器中輸入 http://localhost:8000/,如果能夠正常顯示,則前端啟動成功。
注:
點選確定按鈕,可以正常顯示相應的圖片驗證碼,如下圖所示,如果驗證碼顯示異常或者不顯示,則需要檢查host檔案配置是否生效
#五、基本演示
登入頁面
主頁面
使用者管理
角色管理
選單管理
六、總結
首先非常感謝開源作者為我們提供RuoYi這款產品,我們可以不用使用太多的時間完成企業內部的許可權管理系統的搭建,RuoYi使用多種架構(單體應用、前後端分裡的分散式架構)可供我們選擇。
然後,使用nacos作為註冊中心和配置中心,在環境搭建上浪費了一些時間,但是,也學到了很多知識,網路上各種大神的問題解答,讓問題能夠更加迅速的解決;
最後,本文章羅列了一些在環境準備時,遇到的一些問題,可能沒有全部羅列,大家可以到
RuoYi-Cloud/issues[3]
或著
RuiYi常見問題[4]
中,尋找解決辦法。
參考資料
[1] yarn官網下載:
https://classic。yarnpkg。com/zh-Hans/docs/install#windows-stable
[2] 解決方法:
https://blog。csdn。net/weixin_38883338/article/details/100054550
[3] RuoYi-Cloud/issues:
https://gitee。com/y_project/RuoYi-Cloud/issues
[4] RuiYi常見問題:
http://doc。rycloud。zmrit。com/#/Q&A
[5] RuoYi快速啟動:
http://doc。rycloud。zmrit。com/#/quick-start?id=%e7%8e%af%e5%a2%83%e5%87%86%e5%a4%87
[6] windows下Yarn安裝與使用:
https://blog。csdn。net/w345731923/article/details/82878525
[7] 【報錯】yarn : 無法將“yarn”項識別為 cmdlet、函式、指令碼檔案或可執行程式的名稱。請檢查名稱的拼寫,如果包括路徑,請確保路徑正確,然後再試一次。 + yarn install:
https://blog。csdn。net/weixin_42050406/article/details/106120618
[8] npm安裝教程:
https://www。cnblogs。com/lgx5/p/10732016。html
[9] Nacos支援三種部署模式:
https://nacos。io/zh-cn/docs/deployment。html
[10] 若依/RuoYi-Cloud:
https://gitee。com/y_project/RuoYi-Cloud
[11] wind/ruoyi-ant:
https://gitee。com/zhangmrit/ruoyi-ant
[12] nacos初體驗-踩坑與填坑篇:
https://www。jianshu。com/p/2425c96b470a