【发布时间】:2020-07-28 05:00:22
【问题描述】:
我已经创建了 dockerfile。
FROM ubuntu:latest
RUN apt-get update && apt-get -y upgrade
RUN apt-get -y install curl
RUN apt-get -y install default-jre
RUN curl -O http://archive.apache.org/dist/activemq/5.16.0/apache-activemq-5.16.0-bin.tar.gz
RUN mkdir -p /opt/apache/activemq
RUN tar xvzf apache-activemq-5.16.0-bin.tar.gz -C /opt/apache/activemq
WORKDIR /opt/apache/activemq/apache-activemq-5.16.0/bin
VOLUME /opt/apache/activemq/apache-activemq-5.16.0/conf
RUN echo './activemq start && tail -f /opt/apache/activemq/apache-activemq-5.16.0/data/activemq.log' > start.sh
# Admin interface
EXPOSE 8161
# Active MQ's default port (Listen port)
EXPOSE 61616
CMD ["/bin/bash", "./start.sh"]
我创建了一个这样的 docker 容器
docker run --name activemq -p 8161:8161 -p 61616:61616 temp-activemq:5.16.0
我尝试按如下方式运行管理控制台
http:://localhost:8161/admin/
http://<IP of the Container>:8161/admin/
它们都不起作用
在容器之外,我安装了 activeMQ 并尝试运行管理控制台,它工作正常。谁能帮我指点一下如何进行排序?
我用
解决了上述问题docker run --rm -d --network host --name activemq temp-activemq:5.16.0
但是,我仍在研究为什么端口转发不起作用?
【问题讨论】:
-
启动时记录了什么?它应该说它将管理界面暴露给一个 IP 地址。
http:://0.0.0.0:8161可能值得检查,jetty.xml在jettyPort部分中具有正确的绑定。