run CLI 命令参考

run CLI 命令的详细信息

说明

运行 Dapr 以及(可选的)您的应用程序。有关 daprd 参数、CLI 参数和 Kubernetes 注解的完整对比列表,请参见此处

支持的平台

用法

dapr run [flags] [command]

标志

名称环境变量默认值说明
--app-id, -aAPP_ID您的应用程序的 id,用于服务发现。不能包含点。
--app-max-concurrencyunlimited应用程序的并发级别;默认为 unlimited(无限制)
--app-port, -pAPP_PORT您的应用程序监听的端口
--app-protocol, -PhttpDapr 用于与应用程序通信的协议。有效值为:httpgrpchttps(带 TLS 的 HTTP)、grpcs(带 TLS 的 gRPC)、h2c(HTTP/2 明文)
--resources-path, -dLinux/Mac: $HOME/.dapr/components
Windows: %USERPROFILE%\.dapr\components
资源目录的路径。如果您将资源组织到多个文件夹中(例如,组件在一个文件夹中,弹性策略在另一个文件夹中),您可以定义多个资源路径。请参见下面的示例
--app-channel-address127.0.0.1应用程序监听的网络地址
--runtime-pathDapr 运行时安装路径
--config, -cLinux/Mac: $HOME/.dapr/config.yaml
Windows: %USERPROFILE%\.dapr\config.yaml
Dapr 配置文件
--dapr-grpc-port, -GDAPR_GRPC_PORT50001Dapr 监听的 gRPC 端口
--dapr-internal-grpc-port, -I50002Dapr 内部 API 监听的 gRPC 端口。在开发过程中为遇到因 mDNS 缓存导致服务调用失败暂时性错误的应用程序设置,或在防火墙后配置 Dapr 边车时设置。可以是大于 1024 的任何值,并且每个应用程序必须不同。
--dapr-http-port, -HDAPR_HTTP_PORT3500Dapr 监听的 HTTP 端口
--enable-profilingfalse通过 HTTP 端点启用 “pprof” 性能分析
--help, -h打印帮助信息
--run-file, -fLinux/MacOS: $HOME/.dapr/dapr.yaml使用多应用运行模板文件一次运行多个应用程序。目前处于 alpha 阶段,仅在 Linux/MacOS 上可用
--image使用自定义 Docker 镜像。Docker Hub 的格式为 repository/image,自定义注册表的格式为 example.com/repository/image
--log-levelinfo日志详细程度。有效值为:debuginfowarnerrorfatalpanic
--enable-api-loggingfalse启用从应用程序到 Dapr 的所有 API 调用的日志记录
--metrics-portDAPR_METRICS_PORT9090Dapr 将其指标信息发送到的端口
--profile-port7777性能分析服务器监听的端口
--placement-host-addressLinux/Mac: $HOME/.dapr/components
Windows: %USERPROFILE%\.dapr\components
在 Docker 网络内的任何容器中运行。使用 <hostname><hostname>:<port>。如果省略端口,将默认为:
  • Linux/MacOS: 50005
  • Windows: 6050
--scheduler-host-addressLinux/Mac: $HOME/.dapr/components
Windows: %USERPROFILE%\.dapr\components
在 Docker 网络内的任何容器中运行。使用 <hostname><hostname>:<port>。如果省略端口,将默认为:
  • Linux/MacOS: 50006
  • Windows: 6060
--enable-app-health-checkfalse使用 app-protocol 定义的协议为应用程序启用健康检查
--app-health-check-path用于健康检查的路径;仅限 HTTP
--app-health-probe-interval探测应用程序健康状态的间隔(秒)
--app-health-probe-timeout应用程序健康探测的超时时间(毫秒)
--app-health-threshold将应用程序视为不健康的连续失败次数
--unix-domain-socket, -uUnix 域套接字目录挂载路径。如果指定,与 Dapr 边车的通信使用 Unix 域套接字,与使用 TCP 端口相比,延迟更低且吞吐量更大。Windows 上不可用。
--dapr-http-max-request-size4请求正文的最大大小(MB)。
--dapr-http-read-buffer-size4HTTP 读取缓冲区的最大大小(KB)。这也限制了 HTTP 标头的最大大小。默认为 4 KB
--kubernetes, -k在 Kubernetes 上运行 Dapr,用于 Kubernetes 上的多应用运行模板文件
--components-path, -dLinux/Mac: $HOME/.dapr/components
Windows: %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