我在我们的三个环境(DEV/QA/PROD)的 docker 容器中运行 ActiveMQ Artemis。
管理控制台通常在端口 8161 上运行,因此我在artemis create
创建代理时将其包含在语句中。
--http-host 0.0.0.0 --http-port 8161
所以这会导致我可以看到以下两个变化:
bootstrap.xml 获取主机/端口:
<web bind="http://0.0.0.0:8161" path="web"> <app url="redhat-branding" war="redhat-branding.war"/> <app url="artemis-plugin" war="artemis-plugin.war"/> <app url="dispatch-hawtio-console" war="dispatch-hawtio-console.war"/> <app url="console" war="console.war"/> </web>
jolokia-access.xml 获取主机/端口:
<allow-origin>*://0.0.0.0*</allow-origin>
我正在尝试从远程计算机访问 ActiveMQ Artemis Hawtio 管理控制台,但暴露的 docker 端口不是8161
. 它们是映射的端口38161
, 48161
, & 58161
。
因此,当我登录管理控制台时,我得到:
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)
...