簡體   English   中英

無法連接到在 Docker 容器中運行的 ActiveMQ 控制台

[英]Can't connect to ActiveMQ Console running in Docker container

I made a Dockerfile to run an ActiveMQ service from, and when I try to connect to the console on the host machine using http://127.0.0.1:8161/ in my web browser, it says 127.0.0.1 didn't send any data. 在谷歌瀏覽器中。 這是使用docker run -p 61613:61613 -p 8161:8161 -it service_test bash

但是,當我使用docker run --net host -it service_test bash ,谷歌瀏覽器說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 從我的主機操作系統連接到它。

讓它工作!

對於那些有同樣問題的人,我通過將 jetty.xml 中的jetty.xml地址從127.0.0.1更改為0.0.0.0來解決它。 我現在可以從我的主機操作系統連接到我的容器化 AMQ 實例。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM