首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >对akka.net应用程序进行容器化后,Akka消息传递不起作用

对akka.net应用程序进行容器化后,Akka消息传递不起作用
EN

Stack Overflow用户
提问于 2019-12-17 19:52:59
回答 1查看 81关注 0票数 0

我在linux容器中争用了灯塔和一个akka.net应用程序(batchProcessor)。下面显示的是两个容器都打开了。

我也能够从我本地机器上的Pbm客户端连接到灯塔。

但是batchprocessor无法连接到灯塔(种子节点)。因此,这些多个集群之间的消息传递不起作用。这是灯塔的dockerfile:

代码语言:javascript
复制
FROM mcr.microsoft.com/dotnet/core/sdk:2.2 AS build-env
WORKDIR /app

ENV ACTORSYSTEM="BatchProcessingSystem"
ENV CLUSTER_SEEDS "[]"
ENV CLUSTER_IP "127.0.0.1"
ENV CLUSTER_PORT "4051"

COPY ./bin/Release/netcoreapp2.2/win10-x64/publish/ /app

EXPOSE 9110 4051
RUN dotnet tool install --global pbm 

ENV PATH="${PATH}:/root/.dotnet/tools"
FROM mcr.microsoft.com/dotnet/core/aspnet:2.2
WORKDIR /app
COPY --from=build-env /app .

ENV CPE_ENVIRONMENT "local"
ENV TNS_ADMIN "C:\oracle"

ENTRYPOINT ["dotnet", "Lighthouse.dll"]

这是batchprocessor (akka.net应用程序)的dockerfile:

代码语言:javascript
复制
FROM mcr.microsoft.com/dotnet/core/sdk:2.2 AS build-env
WORKDIR /app
ENV CLUSTER_SEEDS "akka.tcp://BatchProcessingSystem@127.0.0.1:4051"
ENV CLUSTER_IP "127.0.0.1"
ENV CLUSTER_PORT "9121"

COPY ./bin/Release/netcoreapp2.2/win10-x64/publish/ /app

FROM mcr.microsoft.com/dotnet/core/aspnet:2.2
WORKDIR /app
COPY --from=build-env /app .

ENV CPE_ENVIRONMENT "local"
ENV TNS_ADMIN "C:\oracle"

EXPOSE 9121

ENTRYPOINT ["dotnet", "BatchProcessor.dll"]

有人能帮我吗?我漏掉了什么?

EN

回答 1

Stack Overflow用户

发布于 2019-12-25 03:46:06

我想问题出在灯塔的配置上。

代码语言:javascript
复制
ENV CLUSTER_SEEDS "[]"

CLUSTER_SEEDS变量应该为集群中的所有成员保存相同的值,包括种子节点(在本例中为灯塔)。此外,我还建议为调试目的而配置日志记录,因为它描述了in documentation。Akka .net写了详细的集群初始化日志,可能对调查很有帮助。

我也不清楚你是否为灯塔配置了docker文件。据我所知,灯塔已经有了一个镜像,你需要做的就是在开始的时候设置环境变量(ACTORSYSTEM,CLUSTER_IP,CLUSTER_PORT,CLUSTER_SEEDS)。您可以阅读有关此here的内容。

我希望这能帮到你。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/59373721

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档