spring 在Docker中设置Apache ActiveMQ

epggiuax  于 2023-08-02  发布在  Spring
关注(0)|答案(1)|浏览(77)

在Docker中安装Apache ActiveMQ
这是我使用的dockerfile:

FROM ubuntu
LABEL owner="Naman Jain"

RUN apt-get update && apt-get install openjdk-11-jdk wget curl zookeeperd -y

RUN wget http://archive.apache.org/dist/activemq/5.16.5/apache-activemq-5.16.5-bin.tar.gz --output-document apache-activemq.tar.gz

RUN tar -xvzf apache-activemq.tar.gz --directory /opt

RUN rm apache-activemq.tar.gz

字符串
构建dockerfile并运行镜像后->

docker container run -it --name spring -p 8161:8161 -p 61616:61616 65e2b6f0f1529172ef8df15658347aa1898c653502f7cb507e798f12da43b81f


我启动了ActiveMQ服务器->

./activemq console


它给出了以下输出:x1c 0d1x的数据
但我无法在浏览器上看到网页:


我尝试使用-p选项运行图像,但网页不工作。

h43kikqp

h43kikqp1#

我也在尝试做类似的事情,但使用docker-compose,以下是我到目前为止的发现:

activemq:
    image: apache/activemq:5.17.5
    hostname: "0.0.0.0"
    ports:
      - "61616:61616"
      - "8161:8161"
    volumes:
      - ./jetty.xml:/opt/apache-activemq/conf/jetty.xml

字符串
我已经从容器本身获取了jetty.xml。如果你仔细看看你的日志在最后:

..INFO | ActiveMQ WebConsole available at http://127.0.0.1:8161/
..INFO | ActiveMQ Jolokia REST API available at http://127.0.0.1:8161/api/jolokia/


修改jetty.xml配置就可以了。

<bean id="jettyPort" class="org.apache.activemq.web.WebConsolePort" init-method="start">
        <property name="host" value="0.0.0.0"/>
        <property name="port" value="8161"/>
    </bean>


当服务侦听0.0.0.0时,它接受来自任何网络接口的连接,包括环回接口(127.0.0.1)和任何外部接口。

相关问题