【问题标题】:How do I connect to a RabbitMQ instance running in a local Docker container on Windows?如何连接到在 Windows 上的本地 Docker 容器中运行的 RabbitMQ 实例?
【发布时间】:2021-11-09 04:51:18
【问题描述】:

我已经安装了 Docker Desktop 并在那里运行了最新的 RabbitMQ 映像。我还有一个在 Intellij 本地运行的 java 应用程序,它试图连接到端口 5672 上的 RabbitMQ,但它无法连接。如何在端口 5672 上公开在 Docker 中运行的 RabbitMQ?我没有看到任何此类配置选项,并且似乎无法通过提供的 cli 运行任何命令。

这是 Docker 中“检查”选项卡中“端口”部分的外观:

【问题讨论】:

  • 你最初是如何启动 RabbitMQ 的;你使用了什么docker run -p 或 Docker Compose ports: 选项?您将需要使用正确的选项删除并重新创建容器。

标签: java docker rabbitmq queue port


【解决方案1】:

您可能使用不正确的参数启动了 docker run 命令,并且您的 docker rabbitmq 容器无法绑定。为确保一切正确,请尝试以下操作

docker-compose.yml

version: '3.3'

services:
  rabbit:
    image: rabbitmq:3.9.5-management
    hostname: rabbit
    ports:
      - '5672:5672'
      - '15672:15672'

docker-compose up -d 之后,结果如下:

一旦你点击 localhost:15672,使用 guest;guest 你应该也能看到你的连接、队列等等。

【讨论】:

  • 你知道我如何编辑这个 yml 文件吗?我在 docker 桌面应用程序中看不到它的选项,我不确定它在我的硬盘驱动器上的位置。我也想知道这一点,我不确定如何访问所有命令所在的 .sh 文件。也许我应该只是通过 Windows 上的 CLI 而不是使用 docker 应用程序
  • 你不需要 docker 桌面。只需在磁盘上创建一个新文件夹“rabbitmq”文件夹。它可以放在你想要的任何地方,然后创建一个名为 docker-compose.yml 的新空文件并从上面粘贴内容。之后,只需从您首选的 CLI 运行 docker-compose up -d。
【解决方案2】:

在 docker Desktop 中,您应该能够看到 Docker 正在哪个端口运行。您可以通过浏览器访问控制台。如果是这种情况,则问题出在您的应用中,可能是您的属性或类似的东西

【讨论】:

    猜你喜欢
    • 2020-05-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-03-15
    • 1970-01-01
    • 2020-11-17
    相关资源
    最近更新 更多