首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >ActiveMQ Artemis GUI Jolokia在码头容器中的访问

ActiveMQ Artemis GUI Jolokia在码头容器中的访问
EN

Stack Overflow用户
提问于 2019-02-27 10:27:29
回答 1查看 2.6K关注 0票数 0

我正在三个环境(DEV/QA/PROD)的码头容器中运行ActiveMQ Artemis。

管理控制台通常运行在端口8161上,因此在创建代理时,我在artemis create语句中包含了这一点。

代码语言:javascript
复制
--http-host 0.0.0.0 --http-port 8161

因此,这将导致以下两个更改,我可以看到:

  1. bootstrap.xml获取主机/端口:
  2. 获取主机/端口: *://0.0.0.0*

我正在尝试从远程计算机访问ActiveMQ Artemis管理控制台,但公开的码头端口不是8161。它们是映射的端口381614816158161

因此,当我登录到管理控制台时,我得到:

代码语言:javascript
复制
Operation unknown failed due to: java.lang.Exception : Origin http://10.0.20.2:58161 is not allowed to call this agent
Uncaught TypeError: Cannot read property 'apply' of undefined (http://10.0.20.2:58161/console/app/app.js:16:14127)
Uncaught TypeError: Cannot read property 'apply' of undefined (http://10.0.20.2:58161/console/app/app.js:16:14127)
...
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-02-27 20:50:25

我认为这里的问题是您的jolokia access.xml.xml使用了以下内容:

代码语言:javascript
复制
<allow-origin>*://0.0.0.0*</allow-origin>

但是,您正在尝试通过http://10.0.20.2:58161访问控制台,这是基于您的jolokia-access.xml不允许的。因此,您需要更改jolokia-access.xml以允许实际用于连接的IP:端口。

您可以在Jolokia安全文件中阅读更多关于jolokia access.xml.xml的内容。

为了清楚起见,元地址0.0.0.0基本上是“无特定地址”占位符,在将侦听器绑定到网络接口的上下文中,它意味着侦听器应该绑定/侦听所有接口。但是,在用于Jolokia安全的<allow-origin>上下文中,并不意味着允许所有来源。<allow-origin>支持文字匹配和通配符(如上面链接的文档中所指出的)。因此,如果指定了0.0.0.0,它就会尝试与0.0.0.0匹配。无法从create命令中禁用Jolokia安全性。如果要将类似于--http-host 10.0.20.*的内容传递给create命令,那么10.0.20.*将用于绑定bootstrap.xml中的were服务器,这将导致失败。

有一个选项是使用--relax-jolokia,这将禁用严格检查,这可能有助于您的用例。

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

https://stackoverflow.com/questions/54903283

复制
相关文章

相似问题

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