Newbe.Claptrap 框架入门,第一步 —— 开发环境准备

Newbe.Claptrap 框架依托于一些关键性的基础组件和一些可选的辅助组件。本篇我们来介绍一下如何准备一个开发环境。

必要组件

这些组件是使用本框架进行开发是必须要安装的组件。

Docker Desktop

Docker Desktop 是以下所有组件运行的基础。开发可以通过以下链接下载对应操作系统的版本并进行安装:

https://www.docker.com/products/docker-desktop

安装完毕后,可以在控制台中使用以下命令验证安装效果:

PS C:\Repos\newbe\Newbe.Claptrap.Docs\src> docker --version
Docker version 20.10.2, build 2291f61

中国大陆用户,需要为 Docker Desktop 配置好加速镜像。这将有助于后续环境的安装。

dotnet SDK

本框架依赖于 net 5 SDK 和 runtime。开发者可以通过以下链接下载最新的 SDK 并按照提示进行安装:

https://dotnet.microsoft.com/download/dotnet/5.0

安装完毕后,可以在控制台中使用以下命令验证安装效果:

PS C:\Repos\newbe\Newbe.Claptrap.Docs\src> dotnet --version
5.0.103

Tye

Tye 是有微软开发提供的一款简化分布式应用开发的辅助命令行工具。

开发者可以在以下链接中找到最新的安装命令行脚本:

https://www.nuget.org/packages/Microsoft.Tye

安装完毕后,可以在控制台中使用以下命令验证安装效果:

PS C:\Repos\newbe\Newbe.Claptrap.Docs\src> tye --version
0.6.0-alpha.21070.5+a42e4463943e3136dbd1de38474d8d62b802797c

Dapr

Dapr 是 Newbe.Claptrap 运行的基石。可以通过以下官方文档了解开发环境的安装方式:

https://docs.dapr.io/getting-started/

中文用户也可以通过以下链接查看中文介绍:

https://dapr-cn.gitee.io/getting-started/

安装完毕后,可以在控制台中使用以下命令验证安装效果:

PS C:\Repos\newbe\Newbe.Claptrap.Docs\src> dapr --version
CLI version: 1.0.0
Runtime version: 1.0.0

数据库

Newbe.Claptrap 目前支持 SQLite/Mysql/PostgreSQL/Mongodb 多种数据库。

开发者可以选择已经部署好的应用实例,也可以通过以下链接获取本项目开发时使用的docker-compose.yml文件以部署数据库:

https://github.com/newbe36524/Newbe.Claptrap/tree/master/src/Docker/Database

可选组件

这些组件是使用本框架进行开发时可选的组件。只有当需要使用到特定特性时才需要使用到。不过,我们仍然建议开发者安装这些组件。这样有助于开发者更有效的了解系统的运行情况。

Grafana

Grafana 可以将系统的监控数据以图表的形式展示出来,是一个非常优秀的开源方案。

开发者可以使用以下链接中提供的docker-compose.yml来创建一个用于本项目的 Grafana 实例:

https://github.com/newbe36524/Newbe.Claptrap/tree/master/src/Docker/Monitor

Jaeger

Jaeger 是一款分布式链路监控工具,可以帮助开发者进一步了解服务间的关系和性能细节。

开发者可以通过以下链接提供的docker-compose.yml来构建一个用于本项目的 Jaeger 实例:

https://github.com/newbe36524/Newbe.Claptrap/tree/master/src/Newbe.Claptrap.Template/HelloClaptrap

也可以从本项目的项目模板中找到这个docker-compose.yml文件。关于项目模板的详细介绍,将在下节进行说明。

Seq

Seq 是一款高效的分布式日志管理工具,可以帮助开发者对多个应用程序的日志进行收集和可视化。

开发者可以通过以下链接提供的docker-compose.yml来构建一个用于本项目的 Seq 实例:

https://github.com/newbe36524/Newbe.Claptrap/tree/master/src/Newbe.Claptrap.Template/HelloClaptrap

也可以从本项目的项目模板中找到这个docker-compose.yml文件。关于项目模板的详细介绍,将在下节进行说明。

小结

本篇,我们初步了解了如何为 Newbe.Claptrap 项目初始化一个基础可用的开发环境。

下一篇,我们将使用该环境以及项目模板,创建第一个 Newbe.Claptrap 项目。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/304409.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

php sequelize,node,express_sequelize 联合查询,node,express,mysql,sequelize - phpStudy

sequelize 联合查询我用sequelize 联合查询db.user.hasMany(db.bbsuser,{foreignKey:userId});db.bbsuser.belongsTo(db.user);db.user.findAll({include:[db.bbsuser]});得到结果格式以下:{"id": 9,"username": "CallMeSoul&q…

vs中断点不能设置

确保你的exe和pdb文件是从当前源代码里编译出来的。或者在 Tool -> options -> debug. 从中找到并取消掉“源代码必须和调试文件的版本一致”。 转载于:https://blog.51cto.com/ustcer/265179

android 弹窗有边框_Android 多种简单的弹出框样式设置代码

简介这是一个基于AlertDialog和Dialog这两个类封装的多种弹出框样式,其中提供各种简单样式的弹出框使用说明。同时也可自定义弹出框。特性1.使用链式开发代码简洁明了2.所有的弹出框样式都在DialogUIUtils这个类中完成,方便查阅方法3.可以自定义弹出框字…

网易10万+课程迅速刷屏又迅速被封:“违规”背后的思考

从16号晚上8点前后上线到17号早上,不到16小时,网易云课堂的“年度运营大课”,已售出超10万份(售价39元),可以说是非常现象级了。而取得如此现象级成果的背后,至少一个核心驱动力源自于一个“一级…

一起学习设计模式--03.工厂方法模式

简单工厂模式虽然简单,但是存在一个很严重的问题:由于静态工厂方法是根据传入的参数不同来创建不同的产品的,所以当系统中需要引入新产品时,就需要修改工厂类的源代码,这将违背开闭原则。为了实现增加新产品而不修改原…

php restful规范,RESTFul API规范 详细指南

RESTFul规范RESTFul是一种HTTP API接口规范,只要满足的RESTFul规范,即可称为RESTFul API。既然是接口,我们先来了解一下,他和传统的API接口有何不同吧。本文以尽量简单明了的文字来介绍、描述,只讲核心内容&#xff0c…

求对一组数据进行排名的算法

为什么80%的码农都做不了架构师?>>> 我现在有一组数据,比如:25,19,29,3 怎么用java获得这组数据的排名,获得排名的结果应该是3,2,4,1 如果有相等…

移动端h5唤起键盘_移动端H5界面打开后,如何自动调用软键盘

test(){// let aa this.$refs.input1.blur();// this.$nextTick((x)>{ //正确写法// // this.$refs.inputs.focus();// // console.log(x)// // this.$refs.inp[0].$refs.input.focus();// },3000)// $api.dom(input).focus();// this.$refs.Inp.focus();// aa.focus();// …

一份数学小白也能读懂的「马尔可夫链蒙特卡洛方法」入门指南

在众多经典的贝叶斯方法中,马尔可夫链蒙特卡洛(MCMC)由于包含大量数学知识,且计算量很大,而显得格外特别。本文反其道而行之,试图通过通俗易懂且不包含数学语言的方法,帮助读者对 MCMC 有一个直…

使用 xunit 编写测试代码

使用 xunit 编写测试代码Introxunit 是 .NET 里使用非常广泛的一个测试框架,有很多测试项目都是在使用 xunit 作为测试框架,不仅仅有很多开源项目在使用,很多微软的项目也在使用 xunit 来作为测试框架。Get Started在 xunit 中不需要标记测试…

eclipse如何写python_(怎么用eclipse写python)python eclipse 使用教程

用eclipse写了python之后怎么回去写java?eclipse只是一个工具,开发java和python都是插件吧,有个Open Perspective可以选择你的开发视角怎么用eclipse写python方法/步骤如果不会Eclipse中配置搭建Python开发环建第一个File->New->Other弹出Selecta…

DBDesigner 4 与 MySql 5 不能连接主要是驱动的原因

DBDesigner 4 与 MySql 5 不能连接主要是驱动的原因,到 http://crlab.com/dbx/download.html 下载最新的驱动并安装,在安装路径中找到dbexpmda.dll这个文件拷贝到DBDesigner的安装路径中。 然后下载一个最新版本的libMYSQL.dll,也拷贝到DBDes…

白话AI:看懂深度学习真的那么难吗?初中数学,就用10分钟

如果在这个人工智能的时代,作为一个有理想抱负的程序员,或者学生、爱好者,不懂深度学习这个超热的话题,似乎已经跟时代脱节了。但是,深度学习对数学的要求,包括微积分、线性代数和概率论与数理统计等&#…

mysql特性举例_MySQL事务的四大特性和隔离级别

1、事务的四大特性(ACID)#### 1.1、原子性(Atomicity)原子性是指事务包含的一系列操作要么全部成功,要么全部回滚,不存在部分成功或者部分回滚,是一个不可分割的操作整体。1.2、一致性(Consistency)一致性是可以理解为事务对数据完整性约束的…

IdentityServer4密码模式

Oatuth2协议的密码模式介绍用户会将用户名,密码给予客户端,但是客户端不保存此信息,客户端带着用户的密码请求认证服务器,认证服务器密码验证通过后后将token返回给客户端。 这里借用下阮一峰老师画的图(博客地址》htt…

IKVM 编程武林之.NET派的北冥神功

为什么80%的码农都做不了架构师?>>> 在编程武林中,Java派成立较久底子雄厚,虽然掌门人Sun已经老态龙钟,镇山之技的Java语言已经被后进的新秀.NET派的C#压得喘不过气来,甚至有时候Sun老大还得跑到.NET派潜伏…

php 自定义菜单 openid,微信公众平台开发(99) 自定义菜单获取OpenID

关键字 微信公众平台 自定义菜单 OpenID作者:方倍工作室原文:http://www.cnblogs.com/txw1958/p/weixin-menu-get-openid.html在这篇微信公众平台开发教程中,我们将介绍如何在自定义菜单中获得用户的OpenID。本篇开发教程的实质是微信自定义菜…

mysql优化的重要参数 key_buffer_size table_cache

MySQL服务器端的参数有很多,但是对于大多数初学者来说,众多的参数往往使得我们不知所措,但是哪些参数是需要我们调整的,哪些对服务器的性能影响最大呢?对于使用Myisam存储引擎来说,主要有key_buffer_size和…

上海大华条码称代码_上海大华计价电子秤 使用软件 TM-H 大华条码称设置15KG

电子秤上海,电子秤价格,电子秤上海牌子好 电子秤有哪些电子秤那个牌子好,产品质量好大华电子秤软件下载,大华电子秤设置,大华电子秤软件郑重声明:本店所售大华条码秤,属于上海大华的正品&#x…

代码传奇 | 明明可以靠颜值 却用代码把人类送上了月球的女人——Margaret Hamilton

据说「软件工程师」这个名词就是她发明的玛格丽特站在阿波罗计算机指导手册 (AGC) 的源代码程序列表旁边,这些材料摞起来比她的人还要高。图片来源:Margaret Hamilton缔造传奇的人似乎有个共性:本来没想干一票大的,甚至她的打算都…