无法访问Windows Docker上的RabbitMQ

无法访问Windows Docker上的RabbitMQ,docker,rabbitmq,Docker,Rabbitmq,我确信这里的答案是我在这里遗漏的一些非常明显的东西。我在Win 10 Pro机器上安装了Docker for Windows。Windows计算机位于192.168.40/24网络上 我按如下方式拉取并安装RabbitMQ: docker run -d --hostname my-rabbit --name some-rabbit rabbitmq:3-management 我可以看到它正在成功运行: docker ps -a CONTAINER ID IMAGE

我确信这里的答案是我在这里遗漏的一些非常明显的东西。我在Win 10 Pro机器上安装了Docker for Windows。Windows计算机位于192.168.40/24网络上

我按如下方式拉取并安装RabbitMQ:

docker run -d --hostname my-rabbit  --name some-rabbit rabbitmq:3-management
我可以看到它正在成功运行:

docker ps -a
CONTAINER ID        IMAGE                   COMMAND                  CREATED             STATUS                    PORTS                                                 NAMES
3cabceeade6e        rabbitmq:3-management   "docker-entrypoint.s…"   7 minutes ago       Up 7 minutes              4369/tcp, 5671-5672/tcp, 15671-15672/tcp, 25672/tcp   some-rabbit
但是,我无法在127.0.0.1上远程登录5671或15672。我还尝试过禁用Windows防火墙,但没有成功

不确定这两者之间的关系,但Docker配置了以下网络设置:

编辑:IP地址信息为:

 "NetworkSettings": {
            "Bridge": "",
            "SandboxID": "707c66b726b25c80abfebb1712d3bb0ae588dd77c996013bb528de7ac061edd4",
            "HairpinMode": false,
            "LinkLocalIPv6Address": "",
            "LinkLocalIPv6PrefixLen": 0,
            "Ports": {
                "15671/tcp": null,
                "15672/tcp": null,
                "25672/tcp": null,
                "4369/tcp": null,
                "5671/tcp": null,
                "5672/tcp": null
            },
            "SandboxKey": "/var/run/docker/netns/707c66b726b2",
            "SecondaryIPAddresses": null,
            "SecondaryIPv6Addresses": null,
            "EndpointID": "6e5ba9a4596967d98def608e18c9fd925a6ce036a84cd9d616f9f35d561ce68d",
            "Gateway": "172.17.0.1",
            "GlobalIPv6Address": "",
            "GlobalIPv6PrefixLen": 0,
            "IPAddress": "172.17.0.2",
            "IPPrefixLen": 16,
            "IPv6Gateway": "",
            "MacAddress": "02:42:ac:11:00:02",
            "Networks": {
                "bridge": {
                    "IPAMConfig": null,
                    "Links": null,
                    "Aliases": null,
                    "NetworkID": "38f30e8dcf669b9419be3a03f1f296e0bed71d970516c4a1e581d37772bd1b55",
                    "EndpointID": "6e5ba9a4596967d98def608e18c9fd925a6ce036a84cd9d616f9f35d561ce68d",
                    "Gateway": "172.17.0.1",
                    "IPAddress": "172.17.0.2",
                    "IPPrefixLen": 16,
                    "IPv6Gateway": "",
                    "GlobalIPv6Address": "",
                    "GlobalIPv6PrefixLen": 0,
                    "MacAddress": "02:42:ac:11:00:02",
                    "DriverOpts": null
                }
            }
        }

那么,我在这里错过了什么使我无法访问上的web管理界面呢?虽然我可以看到服务器运行在172.17.0.2上,但这显然不在我的网络上。

所以我终于明白了我的愚蠢之处:

我在命令的端添加端口,即:

docker run -d --hostname my-rabbit  --name some-rabbit rabbitmq:3-management -p 15672:15672 -p 5672:5672
而不是在容器等的实际名称之前

docker run -d --hostname my-rabbit -p 15672:15672 -p 5672:5672 --name some-rabbit rabbitmq:3-management 

docker检查3cabceeade6e
获取容器的ip地址,然后尝试telnet ipaddress 15672应该是
docker run-d——主机名my rabbit——命名一些兔子-p端口:端口-p端口:端口rabbitmq:3-management
添加的网络信息。使用-p 15672:15672-p 5671:5671运行时,RMQ服务器无法启动。错误代码是什么?您需要映射端口