mysql调试.net_Adnc如何本地调试 - 一个轻量级的.Net Core微服务开发框架

前言

Adnc是一个轻量级的.Net Core微服务开发框架,一样适用于单体架构系统的开发。

若是只是想本地调试,只须要安装必备软件,必备软件除开发工具外,其它软件建议你们都使用`docker`安装。如何安装`docker`,官方网站上有各类环境下的

安装指南。

微服务最核心的服务自动注册/发现/配置,`adnc`使用`consul`实现,由于在代码中作了限制,调试环境不会启动。固然若是你已经安装好了`cosnul`环境,也能够本身开启,请修改以下3个文件。建议先不要开启`cosnul`相关功能,先快速跑起来,`consul`如何配置,请参考

如何用docker consul部署到服务器

//program.cs

if (env.IsProduction() || env.IsStaging())

{

var configuration = cb.Build();

//从consul配置中心读取配置

var consulOption = configuration.GetSection("Consul").Get();

cb.AddConsul(new[] { consulOption.ConsulUrl }, consulOption.ConsulKeyPath);

}

//startup.cs

if (env.IsProduction() || env.IsStaging())

{

//启动后自动注册服务到consul

app.RegisterToConsul(_srvRegistration.GetConsulConfig());

}

//ServiceRegistrationHelper.cs

//获取用户认证、鉴权服务

var authServerAddress = (_env.IsProduction() || _env.IsStaging()) ? "adnc.usr.webapi" : "http://localhost:5010";

base.AddRpcService(authServerAddress, policies);

演示

GitHub

必备软件有哪些

1. Visual Studio 2019

Adnc基于.Net Core 3.1开发,而且用了部分C# 8.0语法,因此须要安装visual studio 2019。html

2. Redis

#新建/data/redis目录

cd /

mkdir data

cd data

mkdir redis

#进入redis目录

cd reids

#拉取redis镜像文件

docker pull redis

#从官网下载redis.conf,并修改配置

wget http://download.redis.io/redis-stable/redis.conf

修改上面下载的配置文件redis.conf

bind 127.0.0.1 #注释掉这部分,这是限制redis只能本地访问

protected-mode no #默认yes,开启保护模式,限制为本地访问

daemonize no#默认no,改成yes意为以守护进程方式启动,可后台运行,除非kill进程(可选),改成yes会使配置文件方式启动redis失败,请设置成no.

dir ./ #输入本地redis数据库存放文件夹(可选)

appendonly yes #redis持久化(可选)

前端

#启动redis容器,监听13379端口,并挂载redis.conf与data目录

docker run -p 13379:13379 --name redis -v /root/data/redis/redis.conf:/etc/redis/redis.conf -v /root/data/redis/data:/data -d redis redis-server /etc/redis/redis.conf

修改Adnc.Usr.WebApi、Adnc.Cus.WebApi、Adnc.Maint.WebApi 3个微服务appsettings.development.json文件的redis节点信息

"Redis": {

"MaxRdSecond": 120,

"EnableLogging": false,

"LockMs": 5000,

"SleepMs": 300,

"dbconfig": {

"ConnectionStrings": [

"你的redis地址:13379,password=你的密码,poolsize=50,defaultDatabase=1,prefix="

],

"ReadOnly": false

}

}

3. rabbitmq

#拉取rabbitmq镜像

docker pull rabbitmq:management

#启动容器,监听18578,13572端口

docker run --name=rabbitmq -p 18578:15672 -p 13572:5672 -e RABBITMQ_DEFAULT_USER=admin -e RABBITMQ_DEFAULT_PASS=你的密码 -d rabbitmq:management

若是安装成功,咱们访问http://服务器IP:18578,会出现登陆页面。mysql

修改Adnc.Usr.WebApi、Adnc.Cus.WebApi、Adnc.Maint.WebApi 3个微服务appsettings.development.json文件的RabbitMq节点信息

"RabbitMq": {

"HostName": "服务器Ip",

"VirtualHost": "虚拟主机",

"Port": "13572",

"UserName": "用户名",

"Password": "密码"

}

4. mongodb

#拉取mongodb镜像

docker pull mongo

#启动容器,监听13017端口并挂载data与backup目录

docker run --name mongo -p 13017:27017 -v /root/data/mongo:/data/db -v /root/data/mongo/backup:/data/backup -d mongo --auth

修改Adnc.Usr.WebApi、Adnc.Cus.WebApi、Adnc.Maint.WebApi 3个微服务appsettings.development.json文件的MongoDb节点信息

"MongoDb": {

"ConnectionStrings": "mongodb://用户名:密码@服务器Ip:13017/Logs",

"CollectionNamingConvention": 2,

"PluralizeCollectionNames": true

}

修改nlog.config monogdb配置部分

5. mysql

#拉取mysql镜像

docker pull mariadb

#启动容器,监听13308端口,并挂载data与logs目录

docker run --name mariadb -p 13308:3306 -e MYSQL_ROOT_PASSWORD=你的root密码 --restart=always -v /root/data/mariadb/conf:/etc/mysql -v /root/data/mariadb/logs:/var/log/mysql -v /root/data/mariadb/data:/var/lib/mysql -d mariadb

修改Adnc.Usr.WebApi、Adnc.Cus.WebApi、Adnc.Maint.WebApi 3个微服务appsettings.development.json文件的mysql节点信息

"Mysql": {

"WriteDbConnectionString": "Server=服务器ip;Port=13308;database=库名;uid=帐号;pwd=密码;"

}

3个微服务的sql脚本在doc目录中,请自行导入

必备软件安装完成,下面介绍如何启动。git

启动服务端ServerApi

修改Adnc.Usr.WebApi、Adnc.Cus.WebApi、Adnc.Maint.WebApi、Adnc.Infr.Gateway 4个微服务的launchSettings.json文件

注释以下代码,这是启动挂载SkyAPM的配置,由于你没有安装skywalking环境,注释就能够了。

//注释下面代码

"SKYWALKING__SERVICENAME": "adnc.usr.webapi.dev",

"ASPNETCORE_HOSTINGSTARTUPASSEMBLIES": "SkyAPM.Agent.AspNetCore"

右键解决方案,选择多个项目启动,并点击肯定

须要启动4个项目:Adnc.Infr.Gateway、Adnc.Cus.WebApi、Adnc.Maint.WebApi、Adnc.Usr.WebApi。

实际开发过程当中并不须要这样,这样介绍主要是为了快速在本地跑起来。github

回到Visual Studio 2019 主界面,点击启动,这样后台接口与网关就启动了。

启动前端ClientApp

使用visual code 打开前端项目ClientApp

前端使用Vue开发,须要安装不少依赖包web

#安装依赖包

npm install --registry=https://registry.npm.taobao.org

#启动前端页面,地址:localhost:5001,这里请耐心等待,成功后会自动打开浏览器

npm run dev

启动成功后,默认页面是登陆页面,登陆帐号:alpha2008密码:alpha2008

问题交流

License

MIT

Free Software, Hell Yeah!redis

你可能感兴趣的:(mysql调试.net)