我有一个Java应用程序在Docker容器中运行,并在Docker容器中运行。rabbitmq
在另一个容器中。
我如何连接容器来使用 rabbitmq
在我的Java应用程序中?
你必须建立一个网络,并将运行的容器连接到网络上。
然后,你必须将你的应用程序的连接URL设置为你的应用程序的名称。rabbitmq
的网络名,在Docker容器中。
最简单的方法是在Docker容器中创建 docker-compose
文件,因为它将自动创建网络并连接容器。
或
例子 docker-compose.yml
version: '3.7'
services:
yourapp:
image: image_from_dockerhub_or_local // or use "build: ./myapp_folder_below_this_where_is_the_Dockerfile" to build container from scratch
hostname: myapp
ports:
- 8080:8080
rabbitmq:
image: rabbitmq:3.8.3-management-alpine
hostname: rabbitmq
environment:
RABBITMQ_DEFAULT_USER: user
RABBITMQ_DEFAULT_PASS: pass
ports:
- 5672:5672
- 15672:15672
你可以用 docker-compose up
命令。
然后在你的连接网址中使用 host:rabbitmq
, port:5672
.
请注意,如果您不希望接触到 rabbitmq
从您的主机。