This is the multi-page printable view of this section. Click here to print.
Dapr CLI 参考
- 1: Dapr 命令行界面(CLI)参考
- 2: dapr scheduler
- 3: annotate CLI 命令参考
- 4: build-info CLI 命令参考
- 5: completion CLI 命令参考
- 6: components CLI 命令参考
- 7: configurations CLI 命令参考
- 8: dashboard CLI 命令参考
- 9: help CLI 命令参考
- 10: init CLI 命令参考
- 11: invoke CLI 命令参考
- 12: list CLI 命令参考
- 13: logs CLI 命令参考
- 14: mtls CLI 命令参考
- 14.1: mtls export CLI 命令参考
- 14.2: mtls expiry CLI 命令参考
- 14.3: mtls renew certificate CLI 命令参考
- 15: publish CLI 命令参考
- 16: run CLI 命令参考
- 17: status CLI 命令参考
- 18: stop CLI 命令参考
- 19: uninstall CLI 命令参考
- 20: upgrade CLI 命令参考
- 21: version CLI 命令参考
- 22: workflow CLI 命令
1 - Dapr 命令行界面(CLI)参考
Dapr CLI 允许您在本地开发机器或 Kubernetes 集群上设置 Dapr,提供调试支持,并启动和管理 Dapr 实例。
__
____/ /___ _____ _____
/ __ / __ '/ __ \/ ___/
/ /_/ / /_/ / /_/ / /
\__,_/\__,_/ .___/_/
/_/
===============================
Distributed Application Runtime
Usage:
dapr [command]
Available Commands:
annotate Add dapr annotations to a Kubernetes configuration. Supported platforms: Kubernetes
build-info Print build info of Dapr CLI and runtime
completion Generates shell completion scripts
components List all Dapr components. Supported platforms: Kubernetes
configurations List all Dapr configurations. Supported platforms: Kubernetes
dashboard Start Dapr dashboard. Supported platforms: Kubernetes and self-hosted
help Help about any command
init Install Dapr on supported hosting platforms. Supported platforms: Kubernetes and self-hosted
invoke Invoke a method on a given Dapr application. Supported platforms: Self-hosted
list List all Dapr instances. Supported platforms: Kubernetes and self-hosted
logs Get Dapr sidecar logs for an application. Supported platforms: Kubernetes
mtls Check if mTLS is enabled. Supported platforms: Kubernetes
publish Publish a pub-sub event. Supported platforms: Self-hosted
run Run Dapr and (optionally) your application side by side. Supported platforms: Self-hosted
status Show the health status of Dapr services. Supported platforms: Kubernetes
stop Stop Dapr instances and their associated apps. Supported platforms: Self-hosted
uninstall Uninstall Dapr runtime. Supported platforms: Kubernetes and self-hosted
upgrade Upgrades a Dapr control plane installation in a cluster. Supported platforms: Kubernetes
version Print the Dapr runtime and CLI version
Flags:
-h, --help help for dapr
--log-as-json Log output in JSON format
-v, --version version for dapr
Use "dapr [command] --help" for more information about a command.
命令参考
您可以通过以下链接了解每个 Dapr 命令的详细信息。
dapr annotatedapr build-infodapr completiondapr componentsdapr configurationsdapr dashboarddapr helpdapr initdapr invokedapr listdapr logsdapr mtlsdapr publishdapr rundapr statusdapr stopdapr uninstalldapr upgradedapr version
环境变量
部分 Dapr 标志可以通过环境变量设置(例如,对于 dapr init 命令的 --network 标志,可以使用 DAPR_NETWORK)。请注意,在命令行上指定标志会覆盖任何已设置的环境变量。
2 - dapr scheduler
dapr scheduler
管理存储在 Dapr Scheduler 中的计划作业和提醒。
dapr scheduler [command]
别名
schedulersched
可用命令
- list: 列出计划作业
- get: 按键获取计划作业
- delete: 按键删除计划作业
- delete-all): 按键前缀删除所有计划作业
- export: 将所有计划作业导出到文件
- import: 从文件导入计划作业
全局标志
| 标志 | 描述 | | -k, –kubernetes | 在 Kubernetes Dapr 集群上执行操作 | | -n, –namespace string | Dapr 应用的命名空间(默认 “default”) | | –scheduler-namespace string | 调度器运行的命名空间(默认 “dapr-system”) |
dapr scheduler list
列出 Scheduler 中的计划作业。
dapr scheduler list [flags]
标志
--filter string– 按类型筛选作业。可选值:all、app、actor、workflow、activity(默认 all)-o, --output string– 输出格式:short、wide、yaml、json(默认 short)
示例
$ dapr scheduler list
NAME BEGIN COUNT LAST TRIGGER
actor/myactortype/actorid1/test1 -3.89s 1 2025-10-03T16:58:55Z
actor/myactortype/actorid2/test2 -3.89s 1 2025-10-03T16:58:55Z
app/test-scheduler/test1 -3.89s 1 2025-10-03T16:58:55Z
app/test-scheduler/test2 -3.89s 1 2025-10-03T16:58:55Z
activity/test-scheduler/xyz1::0::1 -888.8ms 0
activity/test-scheduler/xyz2::0::1 -888.8ms 0
workflow/test-scheduler/abc1/timer-0-TVIQGkvu +50.0h 0
workflow/test-scheduler/abc2/timer-0-OM2xqG9m +50.0h 0
$ dapr scheduler list -o wide
NAMESPACE NAME BEGIN EXPIRATION SCHEDULE DUE TIME TTL REPEATS COUNT LAST TRIGGER
default actor/myactortype/actorid1/test1 2025-10-03T16:58:55Z @every 2h46m40s 2025-10-03T17:58:55+01:00 100 1 2025-10-03T16:58:55Z
default actor/myactortype/actorid2/test2 2025-10-03T16:58:55Z @every 2h46m40s 2025-10-03T17:58:55+01:00 100 1 2025-10-03T16:58:55Z
default app/test-scheduler/test1 2025-10-03T16:58:55Z @every 100m 2025-10-03T17:58:55+01:00 1234 1 2025-10-03T16:58:55Z
default app/test-scheduler/test2 2025-10-03T16:58:55Z 2025-10-03T19:45:35Z @every 100m 2025-10-03T17:58:55+01:00 10000s 56788 1 2025-10-03T16:58:55Z
default activity/test-scheduler/xyz1::0::1 2025-10-03T16:58:58Z 0s 0
default activity/test-scheduler/xyz2::0::1 2025-10-03T16:58:58Z 0s 0
default workflow/test-scheduler/abc1/timer-0-TVIQGkvu 2025-10-05T18:58:58Z 2025-10-05T18:58:58Z 0
default workflow/test-scheduler/abc2/timer-0-OM2xqG9m 2025-10-05T18:58:58Z 2025-10-05T18:58:58Z 0
dapr scheduler get
按键获取一个或多个计划作业/提醒。
dapr scheduler get <keys...> [flags]
键格式
- App 作业:
app/<app-id>/<job-name> - Actor 提醒:
actor/<actor-type>/<actor-id>/<reminder-name> - 工作流提醒:
workflow/<app-id>/<instance-id>/<reminder-name> - Activity 提醒:
activity/<app-id>/<activity-id>
标志
-o, --output string– 输出格式:short、wide、yaml、json(默认short)
示例
dapr scheduler get app/my-app/job1 -o yaml
dapr scheduler delete
删除一个或多个作业。
dapr scheduler delete <keys...>
别名
delete、d、del
示例
dapr scheduler delete app/my-app/job1 actor/MyActor/123/reminder1
dapr scheduler delete-all
按筛选键批量删除作业。
dapr scheduler delete-all <filter-key>
别名
delete-all、da、delall
示例
dapr scheduler delete-all all
dapr scheduler delete-all app/my-app
dapr scheduler delete-all actor/MyActorType
dapr scheduler export
将所有作业和提醒导出到文件。
dapr scheduler export -o backup.bin
dapr scheduler import
从文件导入作业和提醒。
dapr scheduler import -f backup.bin
3 - annotate CLI 命令参考
描述
向 Kubernetes 配置添加 Dapr 注解。这使您能够在部署文件上添加/更改 Dapr 注解。有关以下标志列表中每个可用注解的完整说明,请参阅 Kubernetes 注解。
支持的平台
用法
dapr annotate [flags] CONFIG-FILE
标志
| 名称 | 环境变量 | 默认值 | 描述 |
|---|---|---|---|
--kubernetes, -k | 向 Kubernetes 资源应用注解。必需 | ||
--api-token-secret | 用于 API 令牌的密钥 | ||
--app-id, -a | 要添加注解的应用 ID | ||
--app-max-concurrency | -1 | 允许的最大并发请求数 | |
--app-port, -p | -1 | 暴露应用的端口 | |
--app-protocol | 应用使用的协议:http(默认)、grpc、https、grpcs、h2c | ||
--app-token-secret | 用于应用令牌的密钥 | ||
--config, -c | 要添加注解的配置文件 | ||
--cpu-limit | 为边车设置的 CPU 限制。请参阅此处的有效值。 | ||
--cpu-request | 为边车设置的 CPU 请求。请参阅此处的有效值。 | ||
--dapr-image | 用于 dapr 边车容器的镜像 | ||
--enable-debug | false | 启用调试 | |
--enable-metrics | false | 启用指标 | |
--enable-profile | false | 启用性能分析 | |
--env | 要设置的环境变量(键值对,逗号分隔) | ||
--graceful-shutdown-seconds | -1 | 等待应用关闭的秒数 | |
--help, -h | annotate 命令的帮助信息 | ||
--listen-addresses | 边车监听的地址。要监听所有 IPv4 地址,使用 0.0.0.0。要监听所有 IPv6 地址,使用 [::]。 | ||
--liveness-probe-delay | -1 | 边车用于存活探测的延迟。了解更多信息。 | |
--liveness-probe-period | -1 | 边车用于存活探测的周期。了解更多信息。 | |
--liveness-probe-threshold | -1 | 边车用于存活探测的阈值。了解更多信息。 | |
--liveness-probe-timeout | -1 | 边车用于存活探测的超时时间。了解更多信息。 | |
--log-level | 要使用的日志级别 | ||
--max-request-body-size | -1 | 要使用的最大请求体大小 | |
--http-read-buffer-size | -1 | HTTP 标头读取缓冲区的最大大小(千字节) | |
--memory-limit | 为边车设置的内存限制。请参阅此处的有效值 | ||
--memory-request | 为边车设置的内存请求 | ||
--metrics-port | -1 | 暴露指标的端口 | |
--namespace, -n | 资源目标所在的命名空间(仅在同时设置了 --resource 时才能设置) | ||
--readiness-probe-delay | -1 | 边车中就绪探测要使用的延迟。了解更多信息。 | |
--readiness-probe-period | -1 | 边车中就绪探测要使用的周期。了解更多信息。 | |
--readiness-probe-threshold | -1 | 边车中就绪探测要使用的阈值。了解更多信息。 | |
--readiness-probe-timeout | -1 | 边车中就绪探测要使用的超时时间。了解更多信息。 | |
--resource, -r | 要添加注解的 Kubernetes 资源目标 | ||
--enable-api-logging | 为 Dapr 边车启用 API 日志记录 | ||
--unix-domain-socket-path | 用于与 Dapr 边车通信的 Linux 域套接字路径 | ||
--volume-mounts | 要以只读模式挂载到边车容器的 Pod 卷列表 | ||
--volume-mounts-rw | 要以读写模式挂载到边车容器的 Pod 卷列表 | ||
--disable-builtin-k8s-secret-store | 禁用内置的 Kubernetes 密钥存储 | ||
--placement-host-address | Dapr Actor 放置服务器的地址列表,逗号分隔 |
警告
如果未使用--app-id, -a 提供应用 ID,将使用格式 <namespace>-<kind>-<name> 生成一个 ID。示例
# 对输入中找到的第一个部署添加注解
kubectl get deploy -l app=node -o yaml | dapr annotate -k - | kubectl apply -f -
# 在链中按名称为多个部署添加注解
kubectl get deploy -o yaml | dapr annotate -k -r nodeapp - | dapr annotate -k -r pythonapp - | kubectl apply -f -
# 从文件或目录按名称为特定命名空间中的部署添加注解
dapr annotate -k -r nodeapp -n namespace mydeploy.yaml | kubectl apply -f -
# 从 URL 按名称为部署添加注解
dapr annotate -k -r nodeapp --log-level debug https://raw.githubusercontent.com/dapr/quickstarts/master/tutorials/hello-kubernetes/deploy/node.yaml | kubectl apply -f -
4 - build-info CLI 命令参考
说明
获取 dapr 和 daprd 可执行文件的版本和 git 提交数据。
支持的平台
用法
dapr build-info
相关说明
您可以通过调用 daprd --build-info 命令直接获取 daprd 构建信息。
5 - completion CLI 命令参考
Description
生成 shell 自动补全脚本
Usage
dapr completion [flags]
dapr completion [command]
Flags
| 名称 | 环境变量 | 默认值 | 描述 |
|---|---|---|---|
--help, -h | 显示此帮助信息 |
Examples
在 macOS 上使用 Homebrew 安装 bash 自动补全
如果运行 macOS 附带的 Bash 3.2:
brew install bash-completion
或者,如果运行 Bash 4.1+:
brew install bash-completion@2
将自动补全添加到你的自动补全目录:
dapr completion bash > $(brew --prefix)/etc/bash_completion.d/dapr
source ~/.bash_profile
在 Linux 上安装 bash 自动补全
如果 Linux 上未安装 bash-completion,请通过你的发行版的包管理器安装 ‘bash-completion’ 包。
将 dapr 的 bash 自动补全代码加载到当前 shell:
source <(dapr completion bash)
将 bash 自动补全代码写入文件并从 .bash_profile 加载:
dapr completion bash > ~/.dapr/completion.bash.inc
printf "source '$HOME/.dapr/completion.bash.inc'" >> $HOME/.bash_profile
source $HOME/.bash_profile
在 macOS 上使用 Homebrew 安装 zsh 自动补全
如果 macOS 上未安装 zsh-completion,请安装 ‘zsh-completion’ 包:
brew install zsh-completions
设置 dapr 的 zsh[1] 自动补全代码在启动时自动加载:
dapr completion zsh > "${fpath[1]}/_dapr"
source ~/.zshrc
在 Linux 上安装 zsh 自动补全
如果 Linux 上未安装 zsh-completion,请通过你的发行版的包管理器安装 ‘zsh-completion’ 包。
将 dapr 的 zsh 自动补全代码加载到当前 shell:
source <(dapr completion zsh)
设置 dapr 的 zsh[1] 自动补全代码在启动时自动加载:
dapr completion zsh > "${fpath[1]}/_dapr"
在 Windows 上安装 Powershell 自动补全
如果 $PROFILE 不存在则创建:
if (!(Test-Path -Path $PROFILE )){ New-Item -Type File -Path $PROFILE -Force }
将自动补全添加到你的配置文件:
dapr completion powershell >> $PROFILE
Available Commands
bash 生成 bash 自动补全脚本
powershell 生成 powershell 自动补全脚本
zsh 生成 zsh 自动补全脚本
6 - components CLI 命令参考
描述
列出所有 Dapr 组件。
支持的平台
用法
dapr components [flags]
标志
| 名称 | 环境变量 | 默认值 | 描述 |
|---|---|---|---|
--kubernetes, -k | false | 列出 Kubernetes 集群中的所有 Dapr 组件(必需) | |
--all-namespaces, -A | true | 如果为 true,列出所有命名空间中的所有 Dapr 组件 | |
--help, -h | 打印此帮助信息 | ||
--name, -n | 要打印的组件名称(可选) | ||
--namespace | 列出指定命名空间中的所有组件 | ||
--output, -o | list | 输出格式(选项:json 或 yaml 或 list) |
示例
# 在 Kubernetes 模式下列出所有命名空间中的 Dapr 组件
dapr components -k
# 在 Kubernetes 模式下列出特定命名空间中的 Dapr 组件
dapr components -k --namespace default
# 在 Kubernetes 模式下打印特定的 Dapr 组件
dapr components -k -n mycomponent
# 在 Kubernetes 模式下列出所有命名空间中的 Dapr 组件
dapr components -k --all-namespaces
警告消息
此命令可能会发出警告消息。
根证书续期警告
如果部署到 Kubernetes 集群的 mTLS 根证书将在 30 天内过期,将显示以下警告消息:
Dapr root certificate of your Kubernetes cluster expires in <n> days. Expiry date: <date:time> UTC.
Please see docs.dapr.io for certificate renewal instructions to avoid service interruptions.
7 - configurations CLI 命令参考
描述
列出所有 Dapr 配置。
支持的平台
用法
dapr configurations [flags]
标志
| 名称 | 环境变量 | 默认值 | 描述 |
|---|---|---|---|
--kubernetes, -k | false | 列出 Kubernetes 集群中的所有 Dapr 配置(必需)。 | |
--all-namespaces, -A | true | 如果为 true,列出所有命名空间中的所有 Dapr 配置(可选)。 | |
--namespace | 列出特定命名空间中的 Dapr 配置。 | ||
--name, -n | 打印特定的 Dapr 配置(可选)。 | ||
--output, -o | list | 输出格式(选项:json 或 yaml 或 list)。 | |
--help, -h | 打印此帮助消息。 |
示例
# 在 Kubernetes 模式下列出所有命名空间中的 Dapr 配置
dapr configurations -k
# 在 Kubernetes 模式下列出特定命名空间中的 Dapr 配置
dapr configurations -k --namespace default
# 在 Kubernetes 模式下打印特定的 Dapr 配置
dapr configurations -k -n appconfig
# 在 Kubernetes 模式下列出所有命名空间中的 Dapr 配置
dapr configurations -k --all-namespaces
警告消息
此命令可能会发出警告消息。
根证书续期警告
如果部署到 Kubernetes 集群的 mTLS 根证书将在 30 天内过期,将显示以下警告消息:
Dapr root certificate of your Kubernetes cluster expires in <n> days. Expiry date: <date:time> UTC.
Please see docs.dapr.io for certificate renewal instructions to avoid service interruptions.
8 - dashboard CLI 命令参考
描述
启动 Dapr dashboard。
支持的平台
用法
dapr dashboard [flags]
标志
| 名称 | 环境变量 | 默认值 | 描述 |
|---|---|---|---|
--address, -a | localhost | 监听地址。仅接受 IP 地址或 localhost 作为值 | |
--help, -h | 打印此帮助信息 | ||
--kubernetes, -k | false | 通过到 Kubernetes 集群的本地代理在本地浏览器中打开 Dapr dashboard | |
--namespace, -n | dapr-system | Dapr dashboard 运行的命名空间 | |
--port, -p | 8080 | 用于提供 Dapr dashboard 的本地端口 | |
--version, -v | false | 打印 Dapr dashboard 的版本 |
示例
# 在本地启动 dashboard
dapr dashboard
# 在本地启动 dashboard 服务并指定端口
dapr dashboard -p 9999
# 端口转发到在 Kubernetes 中运行的 dashboard 服务
dapr dashboard -k
# 端口转发到在 Kubernetes 中运行的 dashboard 服务,监听指定端口上的所有地址
dapr dashboard -k -p 9999 --address 0.0.0.0
# 端口转发到在 Kubernetes 中运行的 dashboard 服务,指定端口
dapr dashboard -k -p 9999
警告信息 - Kubernetes 模式
此命令可能会发出警告信息。
根证书续订警告
如果部署到 Kubernetes 集群的 mTLS 根证书将在 30 天内过期,将显示以下警告信息:
Dapr root certificate of your Kubernetes cluster expires in <n> days. Expiry date: <date:time> UTC.
Please see docs.dapr.io for certificate renewal instructions to avoid service interruptions.
9 - help CLI 命令参考
描述
Help 为应用程序中的任何命令提供帮助。
用法
dapr help [command] [flags]
标志
| 名称 | 环境变量 | 默认值 | 描述 |
|---|---|---|---|
--help, -h | 打印此帮助消息 |
10 - init CLI 命令参考
说明
在支持的托管平台上安装 Dapr。
支持的平台
用法
dapr init [flags]
标志
| 名称 | 环境变量 | 默认值 | 描述 |
|---|---|---|---|
--dashboard-version | latest | 要安装的 Dapr 仪表板的版本,例如:1.0.0 | |
--enable-ha | false | 启用高可用(HA)模式 | |
--enable-mtls | true | 在集群中启用 mTLS | |
--from-dir | 包含下载的"Dapr 安装程序包"版本的本地目录路径,用于在离线环境中 init | ||
--help, -h | 打印此帮助信息 | ||
--image-registry | 从给定的镜像仓库拉取 Dapr 所需的容器镜像 | ||
--kubernetes, -k | false | 将 Dapr 部署到 Kubernetes 集群 | |
--namespace, -n | dapr-system | 安装 Dapr 的 Kubernetes 命名空间 | |
--network | 在其上安装和部署 Dapr 运行时的 Docker 网络 | ||
--runtime-version | latest | 要安装的 Dapr 运行时版本,例如:1.0.0 | |
--image-variant | 用于 Dapr 运行时的镜像变体,例如:mariner | ||
--set | 在命令行上配置选项,以便在安装时传递给 Dapr Helm chart 和 Kubernetes 集群。可以在逗号分隔的列表中指定多个值,例如:key1=val1,key2=val2 | ||
--slim, -s | false | 在自托管安装中排除 placement 服务、scheduler 服务以及 Redis 和 Zipkin 容器 | |
--timeout | 300 | Kubernetes 安装的等待超时时间 | |
--wait | false | 等待 Kubernetes 初始化完成 | |
| N/A | DAPR_DEFAULT_IMAGE_REGISTRY | 用于指定默认容器仓库以拉取镜像。当其值设置为 GHCR 或 ghcr 时,它将从 Github 容器仓库拉取所需镜像。要默认使用 Docker Hub,请取消设置该环境变量或将其留空 | |
| N/A | DAPR_HELM_REPO_URL | 指定私有 Dapr Helm chart url | |
| N/A | DAPR_HELM_REPO_USERNAME | 私有 Helm chart 的用户名 | 访问私有 Dapr Helm chart 所需的用户名。如果可以公开访问,则无需设置此环境变量 |
| N/A | DAPR_HELM_REPO_PASSWORD | 私有 Helm chart 的密码 | 访问私有 Dapr Helm chart 所需的密码。如果可以公开访问,则无需设置此环境变量 |
--container-runtime | docker | 用于传入除 Docker 之外的不同容器运行时。支持的容器运行时包括:docker、podman | |
--dev | 在 Kubernetes 中运行时创建 Redis 和 Zipkin 部署。 | ||
--scheduler-volume | 仅限自托管。可选地,您可以为 scheduler 服务数据目录指定一个卷。默认情况下,如果不使用此标志,scheduler 数据不会持久化,并且对重启没有弹性。 | ||
--scheduler-override-broadcast-host-port | localhost:50006 (Windows 为 6060) | 仅限自托管。指定 scheduler 广播主机和端口,例如:192.168.42.42:50006。 |
示例
安装
通过拉取 Placement、Scheduler、Redis 和 Zipkin 的容器镜像来安装 Dapr。默认情况下,这些镜像从 Docker Hub 拉取。
默认情况下,会为 Scheduler 服务创建一个
dapr_scheduler本地卷,用作数据库目录。此卷的主机文件位置可能位于/var/lib/docker/volumes/dapr_scheduler/_data或~/.local/share/containers/storage/volumes/dapr_scheduler/_data,具体取决于您的容器运行时。
dapr init
Dapr 也可以在没有 Docker 的情况下运行 Slim 自托管模式。
dapr init -s
要将 Dapr Github 容器仓库切换为默认仓库,请将
DAPR_DEFAULT_IMAGE_REGISTRY环境变量值设置为GHCR。要切换回 Docker Hub 作为默认仓库,请取消设置此环境变量。
指定运行时版本
您还可以指定特定的运行时版本。默认情况下,使用最新版本。
dapr init --runtime-version 1.13.4
使用镜像变体安装
您还可以使用特定的镜像变体安装 Dapr,例如:mariner。
dapr init --image-variant mariner
使用 Dapr 安装程序包
在离线或网络隔离环境中,您可以下载 Dapr 安装程序包并使用它来安装 Dapr,而不是从网络拉取镜像。
dapr init --from-dir <installer-bundle-directory-path>
Dapr 也可以在网络隔离环境中的 slim 自托管模式下运行,而无需 Docker。
dapr init -s --from-dir <installer-bundle-directory-path>
指定私有仓库
您还可以指定私有仓库来拉取容器镜像。这些镜像需要发布到私有仓库,如下所示,以使 Dapr CLI 能够通过 dapr init 命令成功拉取它们:
- Dapr 运行时容器镜像(dapr)(用于运行 Placement)- dapr/dapr:
- Redis 容器镜像- dapr/3rdparty/rejson
- Zipkin 容器镜像- dapr/3rdparty/zipkin
Dapr 使用的所有所需镜像都必须在 dapr 路径下。第三方镜像必须发布在 dapr/3rdparty 路径下。
image-registry uri 遵循 docker.io/<username> 格式。
dapr init --image-registry docker.io/username
此命令解析完整的镜像 URI,如下所示 -
- Placement 容器镜像- docker.io/username/dapr/dapr:
- Redis 容器镜像- docker.io/username/dapr/3rdparty/rejson
- zipkin 容器镜像- docker.io/username/dapr/3rdparty/zipkin
您可以在设置 Dapr 时指定不同的容器运行时。如果省略 --container-runtime 标志,则默认容器运行时为 Docker。
dapr init --container-runtime podman
使用 Docker 网络
您可以将本地容器部署到 Docker 网络中,这对于部署到单独的网络或使用 Docker Compose 进行本地开发以部署应用程序非常有用。
创建 Docker 网络。
docker network create mynet
初始化 Dapr 并指定创建的 Docker 网络。
dapr init --network mynet
验证所有容器都在指定网络中运行。
docker ps
从该 Docker 网络卸载 Dapr。
dapr uninstall --all --network mynet
指定 scheduler 广播主机和端口
您可以指定 scheduler 广播主机和端口,例如:192.168.42.42:50006。
当您必须使用不同的主机和端口连接到 scheduler 时,这是必要的,因为 scheduler 只允许与此主机和端口匹配的连接。
默认情况下,scheduler 将使用 localhost:50006(Windows 为 6060)。
dapr init --scheduler-override-broadcast-host-port 192.168.42.42:50006
dapr init -k
使用 --dev 标志以开发模式初始化 Dapr,其中包括 Zipkin 和 Redis。
dapr init -k --dev
您可以使用 --wait 标志等待安装完成部署。
默认超时时间为 300s(5 分钟),但可以使用 --timeout 标志进行自定义。
dapr init -k --wait --timeout 600
您还可以指定特定的运行时版本。
dapr init -k --runtime-version 1.4.0
使用 --set 标志在 Dapr 安装期间配置一组 Helm Chart 值,以帮助设置 Kubernetes 集群。
dapr init -k --set global.tag=1.0.0 --set dapr_operator.logLevel=error
您还可以指定私有仓库来拉取容器镜像。截至目前,dapr init -k 不使用 sentry、operator、placement、scheduler 和 sidecar 的特定镜像。它仅依赖 Dapr 运行时容器镜像 dapr 作为所有这些镜像。
场景 1:dapr 镜像直接托管在私有仓库的根文件夹下 -
dapr init -k --image-registry docker.io/username
场景 2:dapr 镜像托管在私有仓库中的新/不同目录下 -
dapr init -k --image-registry docker.io/username/<directory-name>
11 - invoke CLI 命令参考
说明
对给定的 Dapr 应用程序调用一个方法。
支持的平台
用法
dapr invoke [flags]
标志
| 名称 | 环境变量 | 默认值 | 描述 |
|---|---|---|---|
--app-id, -a | APP_ID | 要调用的应用程序 id | |
--help, -h | 打印此帮助信息 | ||
--method, -m | 要调用的方法 | ||
--data, -d | JSON 序列化的数据字符串(可选) | ||
--data-file, -f | 包含 JSON 序列化数据的文件(可选) | ||
--verb, -v | POST | 要使用的 HTTP 动词 |
示例
# 使用 POST 动词在目标应用上调用示例方法
dapr invoke --app-id target --method sample --data '{"key":"value"}'
# 使用 GET 动词在目标应用上调用示例方法
dapr invoke --app-id target --method sample --verb GET
12 - list CLI 命令参考
描述
列出所有 Dapr 实例。
支持的平台
用法
dapr list [flags]
参数
| 名称 | 环境变量 | 默认值 | 描述 |
|---|---|---|---|
--all-namespaces, -A | false | 列出所有命名空间中的所有 Dapr Pod(可选) | |
--help, -h | 打印此帮助消息 | ||
--kubernetes, -k | false | 列出 Kubernetes 集群中的所有 Dapr Pod(可选) | |
--namespace, -n | default | 列出 Kubernetes 中指定命名空间的 Dapr Pod。仅与 -k 参数一起使用(可选) | |
--output, -o | table | 列表的输出格式。有效值为:json、yaml 或 table |
示例
# 列出自托管模式下的 Dapr 实例
dapr list
# 列出 Kubernetes 模式下所有命名空间中的 Dapr 实例
dapr list -k
# 以 JSON 格式列出 Dapr 实例
dapr list -o json
# 列出 Kubernetes 模式下特定命名空间中的 Dapr 实例
dapr list -k --namespace default
# 列出 Kubernetes 模式下所有命名空间中的 Dapr 实例
dapr list -k --all-namespaces
警告消息 - Kubernetes 模式
此命令可能会发出警告消息。
根证书续期警告
如果部署到 Kubernetes 集群的 mTLS 根证书将在 30 天内过期,则会显示以下警告消息:
Dapr root certificate of your Kubernetes cluster expires in <n> days. Expiry date: <date:time> UTC.
Please see docs.dapr.io for certificate renewal instructions to avoid service interruptions.
13 - logs CLI 命令参考
描述
获取应用程序的 Dapr 边车日志。
支持的平台
用法
dapr logs [flags]
标志
| 名称 | 环境变量 | 默认值 | 描述 |
|---|---|---|---|
--app-id, -a | APP_ID | 需要获取日志的应用程序 id | |
--help, -h | 打印此帮助消息 | ||
--kubernetes, -k | true | 从 Kubernetes 集群获取日志 | |
--namespace, -n | default | 部署应用程序的 Kubernetes 命名空间 | |
--pod-name, -p | Kubernetes 中 Pod 的名称,如果你的应用程序有多个 Pod 则需要指定(可选) |
示例
# 从自定义命名空间的目标 Pod 获取示例应用的日志
dapr logs -k --app-id sample --pod-name target --namespace custom
警告消息
此命令可能会发出警告消息。
根证书续期警告
如果部署到 Kubernetes 集群的 mTLS 根证书将在 30 天内过期,则会显示以下警告消息:
Dapr root certificate of your Kubernetes cluster expires in <n> days. Expiry date: <date:time> UTC.
Please see docs.dapr.io for certificate renewal instructions to avoid service interruptions.
14 - mtls CLI 命令参考
描述
检查 mTLS 是否已启用。
支持的平台
用法
dapr mtls [flags]
dapr mtls [command]
标志
| 名称 | 环境变量 | 默认值 | 描述 |
|---|---|---|---|
--help, -h | 打印此帮助消息 | ||
--kubernetes, -k | false | 检查 Kubernetes 集群中是否启用了 mTLS |
可用命令
expiry 检查根证书颁发机构(CA)证书的过期时间
export 将根证书颁发机构(CA)、颁发者证书和颁发者密钥导出到本地文件
renew-certificate 轮换现有的根证书颁发机构(CA)、颁发者证书和颁发者密钥
命令参考
你可以通过以下链接了解每个子命令的更多信息。
示例
# 检查 Kubernetes 集群上的 mTLS 是否已启用
dapr mtls -k
警告消息
此命令可能会发出警告消息。
根证书续期警告
如果部署到 Kubernetes 集群的 mtls 根证书将在 30 天内过期,将显示以下警告消息:
Dapr root certificate of your Kubernetes cluster expires in <n> days. Expiry date: <date:time> UTC.
Please see docs.dapr.io for certificate renewal instructions to avoid service interruptions.
14.1 - mtls export CLI 命令参考
说明
将根证书颁发机构(CA)、颁发者证书和颁发者密钥导出到本地文件
支持的平台
用法
dapr mtls export [flags]
标志
| 名称 | 环境变量 | 默认值 | 说明 |
|---|---|---|---|
--help, -h | export 的帮助信息 | ||
--out, -o | 当前目录 | 用于保存证书的输出目录路径 |
示例
# 导出 Kubernetes 证书到指定目录
dapr mtls export -o ./certs
警告消息
此命令可能会发出警告消息。
根证书续期警告
如果部署到 Kubernetes 集群的 mtls 根证书将在 30 天内过期,将显示以下警告消息:
Dapr root certificate of your Kubernetes cluster expires in <n> days. Expiry date: <date:time> UTC.
Please see docs.dapr.io for certificate renewal instructions to avoid service interruptions.
14.2 - mtls expiry CLI 命令参考
描述
检查根证书颁发机构 (CA) 证书的到期时间
支持的平台
用法
dapr mtls expiry [flags]
标志
| 名称 | 环境变量 | 默认值 | 描述 |
|---|---|---|---|
--help, -h | 帮助信息 |
示例
# 检查 Kubernetes 证书的到期时间
dapr mtls expiry
14.3 - mtls renew certificate CLI 命令参考
描述
此命令可用于续订即将过期的 Dapr 证书。例如,Dapr Sentry 服务可以生成应用程序使用的默认根证书和颁发者证书。有关更多信息,请参阅安全的 Dapr 与 Dapr 通信
支持的平台
用法
dapr mtls renew-certificate [flags]
标志
| 名称 | 环境变量 | 默认值 | 描述 |
|---|---|---|---|
--help, -h | 显示 renew-certificate 的帮助信息 | ||
--kubernetes, -k | false | 支持的平台 | |
--valid-until | 365 天 | 新创建证书的有效期 | |
--restart | false | 重启 Dapr 控制平面服务(Sentry 服务、Operator 服务和 Placement 服务器) | |
--timeout | 300 秒 | 证书续订过程的超时时间 | |
--ca-root-certificate | 用户提供的 PEM 根证书的文件路径 | ||
--issuer-public-certificate | 用户提供的 PEM 颁发者证书的文件路径 | ||
--issuer-private-key | 用户提供的 PEM 颁发者私钥的文件路径 | ||
--private-key | 用户提供的 root.key 文件,用于生成根证书 |
示例
通过生成全新的证书来续订证书
为 Kubernetes 集群生成新的根证书和颁发者证书,默认有效期为 365 天。证书不会应用到 Dapr 控制平面。
dapr mtls renew-certificate -k
为 Kubernetes 集群生成新的根证书和颁发者证书,默认有效期为 365 天,并重启 Dapr 控制平面服务。
dapr mtls renew-certificate -k --restart
为 Kubernetes 集群生成新的根证书和颁发者证书,具有给定的有效期。
dapr mtls renew-certificate -k --valid-until <天数>
为 Kubernetes 集群生成新的根证书和颁发者证书,具有给定的有效期并重启 Dapr 控制平面服务。
dapr mtls renew-certificate -k --valid-until <天数> --restart
使用用户提供的证书来续订证书
使用提供的 ca.pem、issuer.pem 和 issuer.key 文件路径为 Kubernetes 集群轮换证书并重启 Dapr 控制平面服务
dapr mtls renew-certificate -k --ca-root-certificate <ca.pem> --issuer-private-key <issuer.key> --issuer-public-certificate <issuer.pem> --restart
使用提供的 ca.pem、issuer.pem 和 issuer.key 文件路径为 Kubernetes 集群轮换证书。
dapr mtls renew-certificate -k --ca-root-certificate <ca.pem> --issuer-private-key <issuer.key> --issuer-public-certificate <issuer.pem>
使用提供的根私钥通过生成全新的证书来续订证书
使用现有的 root.key 私钥为 Kubernetes 集群生成新的根证书和颁发者证书,创建的证书具有给定的有效期。
dapr mtls renew-certificate -k --private-key myprivatekey.key --valid-until <天数>
使用现有的 root.key 私钥为 Kubernetes 集群生成新的根证书和颁发者证书。
dapr mtls renew-certificate -k --private-key myprivatekey.key
15 - publish CLI 命令参考
描述
发布一个发布订阅事件。
支持的平台
用法
dapr publish [flags]
标志
| 名称 | 环境变量 | 默认值 | 描述 |
|---|---|---|---|
--publish-app-id, -i | 表示发布源应用的 ID | ||
--pubsub, -p | 发布订阅组件的名称 | ||
--topic, -t | 要发布到的主题 | ||
--data, -d | JSON 序列化字符串(可选) | ||
--data-file, -f | 包含 JSON 序列化数据的文件(可选) | ||
--help, -h | 打印此帮助消息 | ||
--metadata, -m | JSON 序列化的发布元数据(可选) | ||
--unix-domain-socket, -u | Unix 域套接字路径(可选) |
示例
# 通过发布应用发布到目标发布订阅的示例主题
dapr publish --publish-app-id appId --topic sample --pubsub target --data '{"key":"value"}'
# 使用 Unix 域套接字通过发布应用发布到目标发布订阅的示例主题
dapr publish --enable-domain-socket --publish-app-id myapp --pubsub target --topic sample --data '{"key":"value"}'
# 通过发布应用发布到目标发布订阅的示例主题,不使用云事件
dapr publish --publish-app-id myapp --pubsub target --topic sample --data '{"key":"value"}' --metadata '{"rawPayload":"true"}'
16 - run CLI 命令参考
说明
运行 Dapr 以及(可选的)您的应用程序。有关 daprd 参数、CLI 参数和 Kubernetes 注解的完整对比列表,请参见此处。
支持的平台
用法
dapr run [flags] [command]
标志
| 名称 | 环境变量 | 默认值 | 说明 |
|---|---|---|---|
--app-id, -a | APP_ID | 您的应用程序的 id,用于服务发现。不能包含点。 | |
--app-max-concurrency | unlimited | 应用程序的并发级别;默认为 unlimited(无限制) | |
--app-port, -p | APP_PORT | 您的应用程序监听的端口 | |
--app-protocol, -P | http | Dapr 用于与应用程序通信的协议。有效值为:http、grpc、https(带 TLS 的 HTTP)、grpcs(带 TLS 的 gRPC)、h2c(HTTP/2 明文) | |
--resources-path, -d | Linux/Mac: $HOME/.dapr/componentsWindows: %USERPROFILE%\.dapr\components | 资源目录的路径。如果您将资源组织到多个文件夹中(例如,组件在一个文件夹中,弹性策略在另一个文件夹中),您可以定义多个资源路径。请参见下面的示例。 | |
--app-channel-address | 127.0.0.1 | 应用程序监听的网络地址 | |
--runtime-path | Dapr 运行时安装路径 | ||
--config, -c | Linux/Mac: $HOME/.dapr/config.yamlWindows: %USERPROFILE%\.dapr\config.yaml | Dapr 配置文件 | |
--dapr-grpc-port, -G | DAPR_GRPC_PORT | 50001 | Dapr 监听的 gRPC 端口 |
--dapr-internal-grpc-port, -I | 50002 | Dapr 内部 API 监听的 gRPC 端口。在开发过程中为遇到因 mDNS 缓存导致服务调用失败暂时性错误的应用程序设置,或在防火墙后配置 Dapr 边车时设置。可以是大于 1024 的任何值,并且每个应用程序必须不同。 | |
--dapr-http-port, -H | DAPR_HTTP_PORT | 3500 | Dapr 监听的 HTTP 端口 |
--enable-profiling | false | 通过 HTTP 端点启用 “pprof” 性能分析 | |
--help, -h | 打印帮助信息 | ||
--run-file, -f | Linux/MacOS: $HOME/.dapr/dapr.yaml | 使用多应用运行模板文件一次运行多个应用程序。目前处于 alpha 阶段,仅在 Linux/MacOS 上可用 | |
--image | 使用自定义 Docker 镜像。Docker Hub 的格式为 repository/image,自定义注册表的格式为 example.com/repository/image。 | ||
--log-level | info | 日志详细程度。有效值为:debug、info、warn、error、fatal 或 panic | |
--enable-api-logging | false | 启用从应用程序到 Dapr 的所有 API 调用的日志记录 | |
--metrics-port | DAPR_METRICS_PORT | 9090 | Dapr 将其指标信息发送到的端口 |
--profile-port | 7777 | 性能分析服务器监听的端口 | |
--placement-host-address | Linux/Mac: $HOME/.dapr/componentsWindows: %USERPROFILE%\.dapr\components | 在 Docker 网络内的任何容器中运行。使用 <hostname> 或 <hostname>:<port>。如果省略端口,将默认为:
| |
--scheduler-host-address | Linux/Mac: $HOME/.dapr/componentsWindows: %USERPROFILE%\.dapr\components | 在 Docker 网络内的任何容器中运行。使用 <hostname> 或 <hostname>:<port>。如果省略端口,将默认为:
| |
--enable-app-health-check | false | 使用 app-protocol 定义的协议为应用程序启用健康检查 | |
--app-health-check-path | 用于健康检查的路径;仅限 HTTP | ||
--app-health-probe-interval | 探测应用程序健康状态的间隔(秒) | ||
--app-health-probe-timeout | 应用程序健康探测的超时时间(毫秒) | ||
--app-health-threshold | 将应用程序视为不健康的连续失败次数 | ||
--unix-domain-socket, -u | Unix 域套接字目录挂载路径。如果指定,与 Dapr 边车的通信使用 Unix 域套接字,与使用 TCP 端口相比,延迟更低且吞吐量更大。Windows 上不可用。 | ||
--dapr-http-max-request-size | 4 | 请求正文的最大大小(MB)。 | |
--dapr-http-read-buffer-size | 4 | HTTP 读取缓冲区的最大大小(KB)。这也限制了 HTTP 标头的最大大小。默认为 4 KB | |
--kubernetes, -k | 在 Kubernetes 上运行 Dapr,用于 Kubernetes 上的多应用运行模板文件。 | ||
--components-path, -d | Linux/Mac: $HOME/.dapr/componentsWindows: %USERPROFILE%\.dapr\components | 已弃用,推荐使用 --resources-path |
示例
# 运行 .NET 应用程序
dapr run --app-id myapp --app-port 5000 -- dotnet run
# 使用 Unix 域套接字运行 .Net 应用程序
dapr run --app-id myapp --app-port 5000 --unix-domain-socket /tmp -- dotnet run
# 运行 Java 应用程序
dapr run --app-id myapp -- java -jar myapp.jar
# 运行监听端口 3000 的 NodeJs 应用程序
dapr run --app-id myapp --app-port 3000 -- node myapp.js
# 运行 Python 应用程序
dapr run --app-id myapp -- python myapp.py
# 仅运行边车
dapr run --app-id myapp
# 运行用 Go 编写的 gRPC 应用程序(监听端口 3000)
dapr run --app-id myapp --app-port 5000 --app-protocol grpc -- go run main.go
# 运行启用 API 日志记录的监听端口 3000 的 NodeJs 应用程序
dapr run --app-id myapp --app-port 3000 --enable-api-logging -- node myapp.js
# 传递多个资源路径
dapr run --app-id myapp --resources-path path1 --resources-path path2
# 运行多应用运行模板文件
dapr run -f dapr.yaml
# 在 Kubernetes 上运行多应用运行模板文件
dapr run -k -f dapr.yaml
17 - status CLI 命令参考
说明
显示 Dapr 服务的健康状态。
支持的平台
用法
dapr status -k
标志
| 名称 | 环境变量 | 默认值 | 说明 |
|---|---|---|---|
--help, -h | 打印此帮助消息 | ||
--kubernetes, -k | false | 显示 Kubernetes 集群上 Dapr 服务的健康状态 |
示例
# 从 Kubernetes 获取 Dapr 服务状态
dapr status -k
警告消息
此命令可能会发出警告消息。
根证书更新警告
如果部署到 Kubernetes 集群的 mtls 根证书在 30 天内过期,将显示以下警告消息:
Dapr root certificate of your Kubernetes cluster expires in <n> days. Expiry date: <date:time> UTC.
Please see docs.dapr.io for certificate renewal instructions to avoid service interruptions.
18 - stop CLI 命令参考
描述
停止 Dapr 实例及其关联的应用程序。
受支持的平台
用法
dapr stop [flags]
标志
| 名称 | 环境变量 | 默认值 | 描述 |
|---|---|---|---|
--app-id, -a | APP_ID | 要停止的应用程序 id | |
--help, -h | 打印此帮助信息 | ||
--run-file, -f | 使用 Multi-App Run 模板文件一次停止多个运行中的应用程序。目前处于 alpha 阶段,仅可用于 Linux/MacOS |
示例
# 停止 Dapr 应用程序
dapr stop --app-id <ID>
19 - uninstall CLI 命令参考
描述
卸载 Dapr 运行时。
支持的平台
用法
dapr uninstall [flags]
标志
| 名称 | 环境变量 | 默认值 | 说明 |
|---|---|---|---|
--all | false | 除了 Scheduler 服务和 actor Placement 服务容器外,还删除 Redis、Zipkin 容器。删除位于 $HOME/.dapr 或 %USERPROFILE%\.dapr\ 的默认 Dapr 目录。 | |
--help, -h | 打印此帮助信息 | ||
--kubernetes, -k | false | 从 Kubernetes 集群卸载 Dapr | |
--namespace, -n | dapr-system | 卸载 Dapr 的 Kubernetes 命名空间 | |
--container-runtime | docker | 用于传入除 Docker 以外的容器运行时。支持的容器运行时为:docker、podman |
示例
从自托管模式卸载
dapr uninstall
您还可以使用 --all 选项来删除 .dapr 目录、Redis、Placement、Scheduler 和 Zipkin 容器
dapr uninstall --all
在设置 Dapr 时,您可以指定不同的容器运行时。如果省略 --container-runtime 标志,则默认容器运行时为 Docker。
dapr uninstall --all --container-runtime podman
从 Kubernetes 卸载
dapr uninstall -k
20 - upgrade CLI 命令参考
描述
在支持的托管平台上升级或降级 Dapr。
Warning
版本升级或降级时,应该逐步进行,包括小版本。
在降级之前,请确认组件向后兼容,并且应用程序代码未使用 Dapr 早期版本不支持的 API。
支持的平台
用法
dapr upgrade [flags]
标志
| 名称 | 环境变量 | 默认值 | 描述 |
|---|---|---|---|
--help, -h | 打印此帮助信息 | ||
--kubernetes, -k | false | 在 Kubernetes 集群中升级/降级 Dapr | |
--runtime-version | latest | 要升级/降级到的 Dapr 运行时版本,例如:1.0.0 | |
--set | 在命令行上设置值(可以指定多个或用逗号分隔多个值:key1=val1,key2=val2) | ||
--image-registry | 从给定的镜像仓库拉取 Dapr 所需的容器镜像 |
示例
# 在 Kubernetes 中将 Dapr 升级到最新版本
dapr upgrade -k
# 在 Kubernetes 中升级或降级到指定的 Dapr 运行时版本
dapr upgrade -k --runtime-version 1.2
# 在 Kubernetes 中升级或降级到指定的 Dapr 运行时版本并设置值
dapr upgrade -k --runtime-version 1.2 --set global.logAsJson=true
# 使用私有仓库升级或降级,如果您使用私有仓库托管 dapr 镜像并在执行 `dapr init -k` 时使用了它
# 场景 1:dapr 镜像直接托管在私有仓库的根目录下 -
dapr init -k --image-registry docker.io/username
# 场景 2:dapr 镜像托管在私有仓库的新/不同目录下 -
dapr init -k --image-registry docker.io/username/<directory-name>
警告消息
此命令可能会发出警告消息。
根证书续订警告
如果部署到 Kubernetes 集群的 mtls 根证书将在 30 天内过期,将显示以下警告消息:
Dapr root certificate of your Kubernetes cluster expires in <n> days. Expiry date: <date:time> UTC.
Please see docs.dapr.io for certificate renewal instructions to avoid service interruptions.
相关链接
21 - version CLI 命令参考
描述
以普通或 JSON 格式打印 dapr CLI 和 daprd 可执行文件的版本。
支持的平台
用法
dapr version [flags]
标志
| 名称 | 环境变量 | 默认值 | 描述 |
|---|---|---|---|
--help, -h | 打印此帮助信息 | ||
--output, -o | 输出格式(选项:json) |
示例
# Dapr CLI 和运行时的版本
dapr version --output json
相关信息
你可以直接通过运行 daprd --version 命令获取 daprd 版本。
你也可以通过运行 dapr --version 标志获取常规版本输出。
22 - workflow CLI 命令
管理 Dapr 工作流实例。
命令
| 命令 | 描述 |
|---|---|
| dapr workflow run | 启动新的工作流实例 |
| dapr workflow list | 列出工作流实例 |
| dapr workflow history | 获取工作流执行历史 |
| dapr workflow purge | 清除工作流实例 |
| dapr workflow suspend | 暂停工作流 |
| dapr workflow resume | 恢复工作流 |
| dapr workflow terminate | 终止工作流 |
| dapr workflow raise-event | 触发外部事件 |
| dapr workflow rerun | 重新运行工作流 |
标志
-a, --app-id string 工作流实例所属的应用 ID
-h, --help workflow 的帮助信息
-k, --kubernetes 以 Kubernetes Dapr 安装为目标
-n, --namespace string 执行工作流操作的命名空间(默认为 "default")
示例
列出工作流
dapr workflow list --app-id myapp
启动工作流
dapr workflow run MyWorkflow --app-id myapp --input '{"key": "value"}'
Kubernetes 模式
dapr workflow list -k -n production --app-id myapp
列出指定应用程序的工作流实例。
用法
dapr workflow list [flags]
标志
| 名称 | 类型 | 描述 |
|---|---|---|
--app-id, -a | string | (必需)工作流实例所属的应用 ID |
--filter-name, -w | string | 按名称过滤工作流 |
--filter-status, -s | string | 按状态过滤:RUNNING、COMPLETED、FAILED、CANCELED、TERMINATED、PENDING、SUSPENDED |
--filter-max-age, -m | string | 过滤在指定时间段或时间戳内启动的工作流(例如:“300ms”、“1.5h”、“2023-01-02T15:04:05”) |
--output, -o | string | 输出格式:short、wide、yaml、json(默认为 “short”) |
--kubernetes, -k | bool | 以 Kubernetes Dapr 安装为目标 |
--namespace, -n | string | Kubernetes 命名空间(默认为 “default”) |
示例
基本用法
dapr workflow list --app-id myapp
按状态过滤
dapr workflow list --app-id myapp --filter-status RUNNING
按工作流名称过滤
dapr workflow list --app-id myapp --filter-name OrderProcessing
按时间过滤
# 最近 24 小时的工作流
dapr workflow list --app-id myapp --filter-max-age 24h
# 指定日期之后的工作流
dapr workflow list --app-id myapp --filter-max-age 2024-01-01T00:00:00Z
JSON 输出
dapr workflow list --app-id myapp --output json
清除处于终止状态(COMPLETED、FAILED、TERMINATED)的工作流实例。
用法
dapr workflow purge [instance-id] [flags]
标志
| 名称 | 类型 | 描述 |
|---|---|---|
--app-id, -a | string | (必需)工作流实例所属的应用 ID |
--all | bool | 清除所有处于终止状态的工作流实例(请谨慎使用) |
--all-older-than | string | 清除早于指定时间段或时间戳的实例(例如:“24h”、“2023-01-02T15:04:05Z”) |
--kubernetes, -k | bool | 以 Kubernetes Dapr 安装为目标 |
--namespace, -n | string | Kubernetes 命名空间(默认为 “default”) |
示例
清除特定实例
dapr workflow purge wf-12345 --app-id myapp
清除早于 30 天的实例
dapr workflow purge --app-id myapp --all-older-than 720h
清除早于指定日期的实例
dapr workflow purge --app-id myapp --all-older-than 2023-12-01T00:00:00Z
清除所有终止状态的实例(危险!)
dapr workflow purge --app-id myapp --all
强制清除(无工作流运行时,危险!)
dapr workflow purge wf-12345 --app-id myapp --force