You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何调用Dapr Placement API获取Placement表及健康端口问题

解决Dapr Placement API获取Placement表的配置问题

问题根源

默认dapr init部署的Placement服务未启用元数据功能,导致/placement/state端点返回404,必须手动开启DAPR_PLACEMENT_METADATA_ENABLED环境变量才能激活该API。

两种可行解决方案

方法1:手动重启Placement容器(快速临时方案)

  1. 先停止并删除现有Placement容器:
docker stop dapr_placement
docker rm dapr_placement
  1. 手动启动带环境变量的容器,保持和默认部署一致的端口映射:
docker run -d --name dapr_placement --network dapr_network -p 50005:50005 -p 58080:8080 -p 59090:9090 -e DAPR_PLACEMENT_METADATA_ENABLED=true daprio/placement:1.14.4

端口说明和默认部署匹配:

  • 50005:Placement的gRPC通信端口
  • 58080:主机映射到容器内的healthz端口(8080)
  • 59090:监控指标端口
    环境变量DAPR_PLACEMENT_METADATA_ENABLED=true是开启元数据功能的核心配置。

方法2:用自定义配置文件初始化(持久化方案)

  1. 创建config.yaml配置文件,写入Placement启用规则:
apiVersion: dapr.io/v1alpha1
kind: Configuration
metadata:
  name: daprConfig
spec:
  placement:
    metadataEnabled: true
  1. 用该配置文件执行初始化:
dapr init --config ./config.yaml

这样部署的Placement服务会自动启用元数据功能,无需后续手动修改。

验证配置生效

重启服务后,发送GET请求到正确端点:

curl http://localhost:58080/placement/state

此时应该能返回包含所有Dapr actors地址和端口的Placement表数据,不会再出现404错误。

内容的提问来源于stack exchange,提问作者Kelvin Nguyen

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.15 23:12:34