You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Docker容器中运行的ActiveMQ控制台无法连接问题求助

问题:Docker部署ActiveMQ后宿主机无法访问控制台
  • 执行命令 docker run -p 61613:61613 -p 8161:8161 -it service_test bash 启动镜像,进入容器后用 activemq console 启动ActiveMQ,宿主机通过Chrome访问 http://127.0.0.1:8161/ 时,提示 127.0.0.1 didn’t send any data.
  • 执行命令 docker run --net host -it service_test bash 启动镜像,同样启动ActiveMQ后,宿主机Chrome访问 http://127.0.0.1:8161/ 时,提示 127.0.0.1 refused to connect.

怀疑是 --net 参数影响了连接,但不确定具体原因,推测可能和端口转发相关。

我的Dockerfile内容

FROM <...>/library/ubuntu:20.04

ADD <proxy certs>

RUN apt-get update && \
    DEBIAN_FRONTEND=noninteractive apt-get install -y --no-install-recommends software-properties-common && \
    update-ca-certificates && \
    add-apt-repository -y ppa:deadsnakes/ppa && \
    apt-get update && \
    apt-get install -y --no-install-recommends  \
        curl \
        git \
        python3.8 \
        python3.8-venv \
        python3.8-dev \
        openjdk-11-jdk \
        make \
    && apt-get clean && \
    rm -rf /var/lib/apt/lists/*

WORKDIR /opt

RUN <point pip to certs>

RUN echo "timeout = 300" >> /etc/pip.conf

RUN curl -O https://bootstrap.pypa.io/get-pip.py && \
    python3.8 get-pip.py

# Run python in a venv
ENV VIRTUAL_ENV=/opt/venv
RUN python3.8 -m venv $VIRTUAL_ENV
ENV PATH="$VIRTUAL_ENV/bin:$PATH"

# Update pip before continuing
RUN pip install --upgrade pip

# Get wheel
RUN pip install wheel

# add extra index url
RUN echo "extra-index-url = <url>" >> /etc/pip.conf

# Install ActiveMQ
ENV JAVA_HOME="/usr/lib/jvm/java-11-openjdk-amd64"
ENV PATH="$JAVA_HOME/bin:$PATH"
RUN mkdir -p /opt/amq
RUN curl -kL \
    http://archive.apache.org/dist/activemq/5.16.3/apache-activemq-5.16.3-bin.tar.gz \
    >> /opt/amq/apache-activemq-5.16.3-bin.tar.gz && \
    tar -xzf /opt/amq/apache-activemq-5.16.3-bin.tar.gz --directory /opt/amq
ENV PATH="/opt/amq/apache-activemq-5.16.3/bin:$PATH"

# Expose ports 61613 and 8161 to other containers 
EXPOSE 61613
EXPOSE 8161

COPY <package>.whl <package>.whl 
RUN pip install <package>

注:部分敏感信息已移除,所有被<>包裹的内容已隐藏。

补充说明:我在容器内使用 activemq console 启动ActiveMQ,尝试从宿主机操作系统通过Google Chrome进行连接。

内容的提问来源于stack exchange,提问作者Aidan Tweedy

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.19 06:45:41