gpt4 book ai didi

python - Docker -Pika BlockingConnection错误

转载 作者:行者123 更新时间:2023-12-02 20:05:06 26 4
gpt4 key购买 nike

我有一个运行python脚本的docker容器。该脚本提供了一个AMQP网址,Pika用作pika.BlockingConnection的URLParameters。当我在计算机上运行脚本时,它运行良好。容器的日志,我看到尝试连接时脚本晃动。这是我在脚本中使用的代码:

AMQP_URL = __prefix__ + __username__ + ":" + __password__ + __virtual__host + session
("The programm hangs here")
connection = pika.BlockingConnection(pika.URLParameters(AMQP_URL))
channel = connection.channel()
channel.exchange_declare(
exchange = "tmp.topic_2",
exchange_type = "topic"
)

result = channel.queue_declare(exclusive = True)

queue_name = result.method.queue

channel.queue_bind(
exchange = "amq.topic",
queue = queue_name,
routing_key = "ui.#"
)
channel.basic_consume(
UiCallback,
queue= queue_name,
no_ack=True
)
channel.start_consuming()

我在要求中包括了皮卡。我想知道问题是什么:
也许容器无法访问网络?也许我需要在这个或另一个容器中设置Rabbitmq服务器?
谢谢您的帮助

最佳答案

您需要将环境变量RABBIT_HOST_IP设置为运行Docker容器的``主机''的IP。

我的理解是,阻塞连接将值发送回调用它的机器,这可以正常工作,但是如果您在容器内,则发送回的消息将发送到无法在机器上访问的docker容器的IP。

关于python - Docker -Pika BlockingConnection错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50357000/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com