【愚公系列】2023年01月 Dapr分布式应用运行时-组件的定义


前言

Dapr 使用模块化设计,将功能作为组件来提供。 每个组件都有接口定义。 所有的组件都是可插拔的,因此在理想的情况下,你可以用一个具有相同接口的组件换掉另一个。 用于生产的每个组件, 需要保持一套技术要求,以确保组件的功能兼容性和强度。

一、组件的定义

1.创建文件

首先保存下面的 JSON 内容到一个名为 mysecrets.json 的文件:

{
    
    
   "my-secret" : "I'm Batman"
}

在这里插入图片描述

2.创建Dapr组件

创建一个名为 my-components 的目录来存放新的文件,并创建localSecretStore.yaml配置文件如下:

apiVersion: dapr.io/v1alpha1
kind: Component
metadata:
  name: my-secret-store
  namespace: default
spec:
  type: secretstores.local.file
  version: v1
  metadata:
  - name: secretsFile
    value: C:\Users\Happy\.dapr\components\my-components\mysecrets.json
  - name: nestedSeparator
    value: ":"

在这里插入图片描述
上述的文件定义有一个 type: secretstores.local.file 字段值,其告诉Dapr使用本地文件组件作为密钥存储。 元数据字段提供了使用该组件所需的组件特定信息(在本例中,是密钥存储JSON的路径)。

3.运行Dapr组件

dapr run --app-id myapp --dapr-http-port 3500 --components-path ./my-components

在这里插入图片描述

4.获取文件内容

//cmd
curl http://localhost:3500/v1.0/secrets/my-secret-store/my-secret
或
//PowerShell
Invoke-RestMethod -Uri 'http://localhost:3500/v1.0/secrets/my-secret-store/my-secret'

在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/aa2528877987/article/details/128607109
今日推荐