0

RabbitMQ を実行している外部 Docker コンテナーに接続する方法について、何時間も検索してきました。

RabbitMQ を必要とする Nameko を使用して、いくつかのサービスを実行しようとしています。次のコマンドを使用して、RabbitMQ コンテナーを開始しました。

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

これを内部に含む config.yaml という yaml 構成ファイルを作成しました。

AMQP_URI: 'pyamqp://guest:guest@my-rabbit:5672'

Rabbit コンテナーと Nameko コンテナーを起動し、Nameko コンテナーの CLI で次のコマンドを実行します。

nameko shell --config config.yaml

次のエラーが表示されます。

OSError: failed to resolve broker hostname

Docker、RabbitMQ、および Nameko はすべて私にとって新しいテクノロジーなので、何が間違っているのかわかりません。はみ出しているところがあれば教えてください。

4

1 に答える 1

1

ウサギを docker-compose で起動します。

version: "3"
services:
  rabbit:
    container_name: rabbitmq
    image: rabbitmq:3.7-management
    ports:
        - "5672:5672"
        - "15672:15672" # Exposing RabbitMQ web management on different port for convenience
    restart: always

および config.yaml:

AMQP_URI: amqp://guest:guest@$localhost:5672/
于 2021-06-01T19:29:09.363 に答える