快速入门:定义组件

创建组件定义文件以与 Secrets 构建块进行交互

当构建一个应用程序时,你很可能会根据你想使用的构建块和特定的组件来定义自己的组建文件。

在本快速入门中,您将创建一个组件定义文件以与 Secrets 构建块进行交互:

  • 创建本地 JSON 秘密存储.
  • 使用组件定义文件在 Dapr 注册密钥存储.
  • 使用 Dapr HTTP API 获取秘密.

第 1 步:创建一个 JSON 密钥存储

Dapr 支持 多种类型的密钥存储,但对于本快速入门,使用以下密钥创建一个名为 mysecrets.json 的本地 JSON 文件:

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

第 2 步:创建一个密钥存储Dapr 组件

  1. 创建一个名为 my-components 的目录来存放新的组件文件:

    mkdir my-components
    
  2. 进入目录

    cd my-components
    
  3. 创建一个新文件 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: <PATH TO SECRETS FILE>/mysecrets.json
      - name: nestedSeparator
        value: ":"
    

在上面的定义文件中:

  • type: secretstores.local.file 告诉Dapr使用本地文件组件作为密钥存储。
  • 元数据字段提供使用此组件所需的组件特定信息。 在这种情况下,密钥存储 JSON 路径相对于您调用 dapr run 的位置。

第 3 步:运行Dapr sidecar

启动一个 Dapr sidecar,它将在端口 3500 上侦听名为 myapp的空白应用程序:

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

第 4 步:获取一个密钥

在独立的终端中运行:


curl http://localhost:3500/v1.0/secrets/my-secret-store/my-secret

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

输出:

{"my-secret":"I'm Batman"}
下一步:设置 Pub/sub(发布/订阅) 代理 >>