簡體   English   中英

如何獲取從另一個容器(Docker Compose)運行的RabbitMQ的IP地址?

[英]How can I get the IP address of RabbitMQ running from another container (Docker Compose)?

我正在關注教程。 在這里,我需要將RabbitMQ IP地址設置為我的Celery設置。

我的docker-compose.yml中有三個容器:NGINX,Django + Celery和RabbitMQ。 這些都與docker-compose up一起運行。 但是,我需要在不同的容器中擁有celery.py的RabbitMQ IP地址。

通過Google查看, docker-machine ip <container>應該是解決方案。 但是, docker-machine僅適用於運行容器AFAIK。 那么,如何將容器IP地址傳遞到同一docker-compose.yml文件中的另一個容器? 在這種情況下,我想要我的RabbitMQ IP地址。

您不需要傳遞IP。 docker-compose.yml為這些服務添加link配置,然后按服務名稱引用容器。

services:
  rabbitmq:
    # other config here
  celery:
    # other config ...
    link:
      - rabbitmq

然后,您可以將Celery配置為使用名稱Rabbitmq連接。 因此,您的BROKER_URL設置為amqp://user:pass@rabbitmq:5672/queue_name

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM