无法从Mac localhost的Docker容器中访问rabbitmq webpipe理员

我最近为需要Docker,MongoDB容器和RabbitMQ容器的项目安装了Docker for Mac。 我正在使用docker-compose.xml文件来创build容器。 到目前为止,我能够通过localhost:27017从容器访问MongoDB数据库。

但是,我无法使用localhost:15672访问pipe理插件。 我正在使用RabbitMQ的pipe理映像,但是这根本不起作用。 这里是我的configuration文件的副本:

搬运工-组成,阳明海运:

version: '2' services: mongo: container_name: "mongo1" tty: true image: mongo:latest environment: - MONGO_DATA_DIR=/data/db - MONGO_LOG_DIR=/dev/null - MONGO_INITDB_ROOT_USERNAME=admin - MONGO_INITDB_ROOT_PASSWORD=*************** volumes: - /data/db:/data/db ports: - 27017:27017 command: "mongod --smallfiles --auth" rabbitmq: container_name: "rabbitmq1" tty: true image: rabbitmq:management ports: - "15672:15672" - "15671:15671" - "5672:5672" volumes: - /rabbitmq/lib:/var/lib/rabbitmq - /rabbitmq/log:/var/log/rabbitmq - /rabbitmq/conf:/etc/rabbitmq/ 

生成rabbitmq.config:

 [ { rabbit, [ { loopback_users, [ ] }, { tcp_listeners, [ 5672 ] }, { ssl_listeners, [ ] }, { hipe_compile, false } ] } ]. 

我查看了pipe理镜像的Dockerfile,它似乎允许在文件中使用“rabbitmq-plugins enable rabbitmq_management”。 我一直在浏览器上看到“连接被重置”。

我是新来的Docker,不知道是什么原因造成这个问题。

似乎跳出来的唯一的事情是在rabbitmq.config; 我没有看到其他端口的条目,包括15672.虽然这个文件是由rabbitmq添加的。 另外,调用docker-compose logs命令不会显示任何表示收到请求的条目。

从shell运行这个命令解决了这个问题: docker exec [CONTAINER_NAME] rabbitmq-plugins enable rabbitmq_management从这个网站docker exec [CONTAINER_NAME] rabbitmq-plugins enable rabbitmq_management , https://github.com/docker-library/rabbitmq/issues/45 。 我以为使用图像rabbitmq:pipe理应该解决这个问题。

为什么运行rabbitmq:management image不能解决这个问题?