我已经设置了一个基于 Spring Cloud 和 Netflix OSS 产品套件的演示应用程序。当我运行所有模块时,该应用程序可以在我的本地开发环境以及 Pivotal Web 服务上完美运行。
我遇到的问题是当我将模块配置为在 docker 中运行时。当我启动一个依赖于 RabbitMQ for Hystrix/Turbine 的应用程序时,我收到了 AMQP 连接异常。
2015-07-30 15:32:15.567 WARN 1 --- [askExecutor-262] o.s.a.r.l.SimpleMessageListenerContainer : Consumer raised exception, processing can restart if the connection factory supports it. Exception summary: org.springframework.amqp.AmqpConnectException: java.net.ConnectException: Connection refused
我在 docker 中使用以下配置启动了 rabbitmq:
docker run -d --hostname rabbitmq --name rabbitmq -p 5672:5672 -p 15672:15672 rabbitmq:3-management
我可以在浏览器中毫无问题地访问管理端口。
当我在 docker 中启动一个依赖项目时,我使用 docker 链接参数指定 rabbitmq:
--link rabbitmq:rabbitmq
知道这里缺少什么吗?