前幾篇分別介紹了abp vNext微服務框架和微服務CI/CD環境搭建,本篇開始介紹vNext微服務框架的開發環境搭建。
環境准備
官方介紹的系統架構圖如下:
上圖中身份服務和網關服務已經集成在系統中,我們需要搭建的是MS Sql、mongoDB、redis、RabbitMQ、elasticsearch。其中MS Sql、RabbiMQ、elasticsearch建議直接安裝,redis、mongoDB建議docker安裝。安裝教程如下:
Ubuntu18.04 安裝RabbiMQ:
https://my.oschina.net/u/2364788/blog/2875902
elasticsearch使用的Java環境,十分消耗系統資源,開發過程中建議不要安裝,安裝教程暫時忽略。
docker安裝redis、mongoDB:
https://blog.csdn.net/myNameIssls/article/details/80520465
https://www.jianshu.com/p/2181b2e27021
SQL server版本越高越好。
獲取abp vNext代碼
通過GitHub官方拉取最新發布代碼:https://github.com/abpframework/abp
解壓后項目結構如下:
構建本地開發環境
項目根目錄cmd進入framework執行:
dotnet restore
dotnet build
構建完成后退出進入modules目錄對每個模塊分別執行:
dotnet restore
dotnet build
最后構建微服務,進入samples\MicroserviceDemo目錄執行:
dotnet restore
dotnet build
如果所有模塊都構建成功,下一步打開MicroserviceDemo解決方案開始配置微服務
配置微服務
配置AuthServer
打開applications目錄下AuthServer.Host\appsettings.json
修改ConnectionStrings、Redis、RabbitMQ配置,示例如下:
配置BackendAdminAppGateway、InternalGateway
分別修改BackendAdminAppGateway.Host和InternalGateway.Host配置文件中的數據庫連接和redis連接。
配置IdentityService、ProductService
分別修改IdentityService.Host和ProductService.Host配置文件中的數據庫連接、redis連接和RabbiMQ配置。
其他服務也參考以上進行修改。
使用EF CORE還原數據庫
右鍵AuthServer.Host設置為啟動項目,如下:
打開程序包管理控制台,使用ef core 遷移命令:
遷移成功后對ProductService.Host做同樣操作:
到此本地開發環境已經搭建完成,下面開始啟動項目:
設置啟動順序如下,不要調試:
abp vNext提供了MVC的簡單后台管理界面和門戶網站界面分別是http://localhost:51954、http://localhost:53435,忙活了這么久,趕緊打開嘗試一下吧。。。
總結
直接從源碼構建比較麻煩而且容易構建失敗,嫌麻煩的話可以直接將MicroserviceDemo中的工程引用改為nuget引用,abp已經同步更新nuget包。改為nuget包后代碼構建將十分簡單,大家可以根據喜好嘗試一下。