我是MULE ESB和部署的新手。我一直在围绕将Mule应用程序部署到Mule独立环境进行一些试验。我正在使用与此类似的方法 https://dzone.com/articles/dockerizing-clustering-and-queueing-up-with-mule-e
但是我的问题是,如果我有一个ule子集群,在其中部署my子代理以及and子API,是否有任何方法可以做到这一点?如何将单个Docker映像绑定到同一m子群集?或者,如果我有上述方法中提到的具有运行时运行的单个容器,如何将这些容器绑定到同一群集中?
答案 0 :(得分:1)
让我们一一解答您的问题,然后尝试回答。
if I have a mule cluster where in I deploy my mule proxies and also mule APIs , Is there any way to do that ?
如果您的Mule运行时低于 3.8 版本,则需要APi网关单独部署API代理。但是在Mule 3.8 版本之后,Mulesoft具有统一的Mule运行时和API网关,这意味着您的API代理可以直接部署到Mule运行时中。代理不需要单独的API网关。
所有的API,代理和策略都可以直接部署到Mule运行时中。
https://blogs.mulesoft.com/dev/mule-dev/announcing-mule-3-8-unified-runtime-integration-api-management/
How would I bind individual docker images to the same mule cluster?
如果您仔细阅读了这篇文章,可以在在Docker中创建Mule集群部分中看到。
每个集群有2个 properties配置文件,用于定义每个集群的属性,以及 YAML 文件,用于将运行时绑定为一个集群 。
此 YAML 文件指出了两个属性文件,它们描述了每个集群的属性。
还有一个 Docker 映像文件,该映像文件获取先前的基础映像(在FROM anirban-mule-demo
顶部进行了描述),创建了Mule运行时,并部署了Mule根据在那里定义的应用程序。
使用命令docker-compose build
时, YAML 文件将Docker容器中的运行时 build 绑定到Mule集群。基本映像在后台运行两次,创建2个不同的Mule运行时,然后使用 2个属性配置文件创建集群,该文件描述每个带有单个节点的集群属性。
它实际上使用从属性文件创建Mule群集的过程,这是使用Mule群集的另一种方法。
您可以找到如何从属性文件here
现在,最后您可以使用docker run
命令在集群中启动Mule运行时,集群中的应用程序将获得不同的http端口 7082
和{ {1}}分别在 docker run 命令中定义。
希望获得帮助