前几篇分别介绍了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. 【ABAP系列】SAP ABAP下载带密码的Excel文件

    公众号:SAP Technical 本文作者:matinal 原文出处:http://www.cnblogs.com/SAPmatinal/ 原文链接:[ABAP系列]SAP ABAP下载带密码的Ex ...

  2. 关于使用Arduino做开发的理解

    转载自arduino中文社区 https://www.arduino.cn/thread-5414-1-1.html 见到很多人对Arduino的开发方法 .应用场景有误解,特别开个帖子说明下. 误解 ...

  3. powerDesigner的建表语句默认设置为去掉双引号

    powerDesigner的建表语句默认设置为去掉双引号,依次执行如下操作: Database ------>> Edit Current DBMS ------>> Scri ...

  4. Oracle对象-视图和索引

    Oracle 对象-视图 视图概念 ​ 视图就是提供一个查询的窗口,所有的数据来自于原表 创建视图[必须有dba权限] --查询语句创建表 create table emp as select * f ...

  5. 【LOJ】#3096. 「SNOI2019」数论

    LOJ#3096. 「SNOI2019」数论 如果\(P > Q\)我们把\(P\)和\(Q\)换一下,现在默认\(P < Q\) 这个时候每个合法的\(a_i\)都可以直接落到\(Q\) ...

  6. shiro整合shiro多验证登录(账号密码登录和使用手机验证码登录)

    1. 首先新建一个shiroConfig  shiro的配置类,代码如下: @Configuration是标识这个类是一个配置文件,在启动时会加载这个类里面的内容,这个配置文件的位置的一定一定一定不能 ...

  7. python学习-6 猜拳小游戏

    import random # 调用随机数模块 pc = random.randint(1,3) # 产生1-3的随机数 print("来玩个猜拳游戏吧!") a = '石头' b ...

  8. table html

    <html><head><title>demo-110101</title><style type="text/css"> ...

  9. Path.Combine(

    // 获取程序的基目录. var dir1 = System.AppDomain.CurrentDomain.BaseDirectory; // 获取模块的完整路径. var dir2 = Syste ...

  10. ArrayList插入1000w条数据的时间比较分析

    一分钟系列: 读懂GC日志 ArrayList插入1000w条数据之后,我怀疑了jvm... Java JIT性能调优 Java性能优化指南系列(三):理解JIT编译器 准备:调试程序加入VM Opt ...