Dapr 在独立模式下不 运行

Dapr not running in stand alone mode

我正在竭尽全力尝试在本地使用 Dapr 获得一个基本的 ASP.NET 核心 API。我已经按照文档进行操作,但仍然没有运气。我确定我只是缺少一些基本的东西,但我无法解决它。

这些是我到目前为止为尝试使它正常工作而执行的步骤:

  1. 已安装 Dapr CLI(cli 版本 0.11.0)
  2. 已执行 dapr init --runtime-version 1.0.0-rc.3(安装了 3 docker 个容器并且 运行)
  3. 导航到我的 dotnet 项目并执行以下命令 - dapr run --app-id microservicea --app-port 5000 --dapr-http-port 55000 --dapr-grpc-port 55001 -- dotnet run

执行完dapr run命令后,项目建立,出现各种Dapr日志,但是,我也得到以下信息:

Could not update sidecar metadata for cliPID: PUT http://127.0.0.1:55000/v1.0/metadata/cliPID giving up after 5 attempts

这向我表明 Sidecar 不是 运行 作为一个进程,或者只是不可访问。

我不知道我做错了什么。

附带说明一下,我确实注意到,如果我将 dapr-http-portlaunchsettings.json 中的端口匹配,我会收到以下消息 - You're up and running! Both Dapr and your app logs will appear here. 但它仍然没有当我尝试调用 http://127.0.0.1:5000/v1.0/invoke/microservicea/method/GetSomeData 端点时无法正常工作。

在此方面提供一些帮助将不胜感激。如果我不能让这个基本示例正常工作,那么我将不得不放弃 Dapr 并寻找一种替代方法来将我的微服务拼接在一起。

原来问题是我安装了错误版本的 Dapr CLI 和运行时。在撰写本文时,我确保安装了 1.0.0-rc.3 版的 CLI 工具,然后安装了 1.0.0-rc.3 版的运行时 (dapr init --runtime-version 1.0.0-rc.3)。安装后,一切正常。

您正在为 dapr-http-portdapr-grpc-port 使用相同的端口。那里肯定会发生端口冲突,可能会阻止 运行.

的边车

其次,您在错误的端口上调用。您应该使用 http://127.0.0.1:55000/v1.0/invoke/microservicea/method/GetSomeData,或者在这种情况下,您使用的端口来自 launchsettings.json