前几篇分别介绍了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包后代码构建将十分简单,大家可以根据喜好尝试一下。

文章目录:https://www.cnblogs.com/william-xu/p/12047529.html

 

[Abp vNext微服务实践] - 启动流程的更多相关文章

  1. [Abp vNext微服务实践] - 文章目录

    简介 ABP vNext是volosoft的新一代框架,ABP(vNext)完全使用.NET CORE和DDD(领域驱动)打造,目前GitHub已有6K+次提交,发布版本超过40次,Nuget包下载量 ...

  2. [Abp vNext微服务实践] - 前后端分类

    一.前景 abp vNext是ABP 开源 Web应用程序框架,是abp的新一代开源web框架.框架完美的集成.net core.identity server4等开源框架,适用于构建web应用程序和 ...

  3. [Abp vNext微服务实践] - 框架分析

    一.简介 abp vNext新框架的热度一直都很高,于是最近上手将vNext的微服务Demo做了一番研究.我的体验是,vNext的微服务架构确实比较成熟,但是十分难以上手,对于没有微服务开发经验的.n ...

  4. [Abp vNext微服务实践] - 租户登录

    简介 Abp vNext微服务授权验证基于ids4,实现租户登录需要在授权服务中获取token,和之前的介绍的登录方式一样,只是多了tenant参数.本篇将介绍在Abp vNext授权服务中启用多租户 ...

  5. [Abp vNext微服务实践] - 服务通讯

    简介 服务通讯是微服务架构中必不可少的功能,服务通讯的效率决定了微服务架构的优略.常用的微服务通讯策略有两种,分别是rpc.http,其中rpc以gRpc框架为代表使用者最多.abp vNext微服务 ...

  6. [Abp vNext微服务实践] - 添加中文语言

    简介 abp vNext中提供了多语言功能,默认语言是英文,没有提供中文语言包.在业务开发中,定义权限后需要用中文的备注提供角色选择,本篇将介绍如何在abp vNext中加入中文语言. step1:添 ...

  7. [Abp vNext微服务实践] - vue-element-admin管理Identity

    一.简介 abp vNext微服务框架中已经提供通用权限和用户角色管理模块,管理UI使用的是MVC模式,不适用于国内主打的MVVM开发模式.在前端框架选型后笔者决定改造abp vNext微服务框架中原 ...

  8. [Abp vNext微服务实践] - 业务开发

    前几篇分别介绍了abp vNext微服务框架.开发环境搭建和vue element admin前端框架接入,在vue element admin中实现用户角色管理基本功能后就可以开始进行业务开发了,本 ...

  9. [Abp vNext微服务实践] - vue-element-admin登录二

    简介: Vue Element Admin是基于vue.element ui开发的后台管理ui,abp vNext是abp新一代微服务框架.本篇将会介绍如何改造Vue Element Admin权限验 ...

随机推荐

  1. Scrapy框架(1)

    参考博客: 10.scrapy框架简介和基础应用 Scrapy框架(1)

  2. 剑指offer 66. 构建乘积数组(Leetcode 238. Product of Array Except Self)

    剑指offer 66. 构建乘积数组 题目: 给定一个数组A[0, 1, ..., n-1],请构建一个数组B[0, 1, ..., n-1],其中B中的元素B[i] = A[0] * A[1] * ...

  3. OpenGL.资料积累

    1.又一种Qt + OpenGL 的离屏渲染方法 - liji_digital的博客 - CSDN博客.html(https://blog.csdn.net/liji_digital/article/ ...

  4. Vue.js 关于双向绑定的一些实现细节

    Vue.js 是采用 Object.defineProperty 的 getter 和 setter,并结合观察者模式来实现数据绑定的. 当把一个普通 Javascript 对象传给 Vue 实例来作 ...

  5. 最新 智联java校招面经 (含整理过的面试题大全)

    从6月到10月,经过4个月努力和坚持,自己有幸拿到了网易雷火.京东.去哪儿.智联等10家互联网公司的校招Offer,因为某些自身原因最终选择了智联.6.7月主要是做系统复习.项目复盘.LeetCode ...

  6. bootstrap基础学习【表单含按钮】(二)

    <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...

  7. strtotime 的 BUG

    strtotime('+1 month'),strtotime('-1 month')  碰到一个月中有28, 31天的就会有问题, 比如 strtotime('+1 month', strtotim ...

  8. rabbitmq启动方式

    1.以应用方式启动 rabbitmq-server -detached 后台启动 Rabbitmq-server 直接启动,如果你关闭窗口或者需要在改窗口使用其他命令时应用就会停止  关闭:rabbi ...

  9. Kubernetes---Pod状态示例

    ⒈Pod 中只有一个容器并且正在运行,容器成功退出 ·记录事件完成  ·如果restartPolicy为:  Always:重启容器:Pod phase仍为Running  OnFailure:Pod ...

  10. 2019上海网络赛 F. Rhyme scheme 普通dp

    Rhyme scheme Problem Describe A rhyme scheme is the pattern of rhymes at the end of each line of a p ...