socket.gaierror gaierror: [Errno -2] Name or service not known - pika rabbitMQ
socket.gaierror gaierror: [Errno -2] Name or service not known - pika rabbitMQ
我正在尝试从 localhost:5000 上托管的 python 服务器向 RabbitMQ 服务器发送消息(使用 RabbitMQ 的 docker 图像),但我收到以下信息错误:
socket.gaierror gaierror: [Errno -2] Name or service not known
我是 运行 RabbitMQ 的 docker 图像,使用命令 'rabbithost' 是我使用的主机名:
sudo docker run -d --hostname rabbithost --name rabbitmq -p
15672:15672 -p 5672:5672 -p 5671:5671 rabbitmq:3-management
这是给出错误的 python 代码:
def send_to_queue(message):
credentials = pika.PlainCredentials('guest', 'guest')
parameters = pika.ConnectionParameters('rabbithost', 5672, '/', credentials)
connection = pika.BlockingConnection(parameters)
channel = connection.channel()
channel.queue_declare(queue='hello')
channel.basic_publish(exchange='', routing_key='hello',body=message)
connection.close()
return "Message Sent! "
错误在行:
connection = pika.BlockingConnection(parameters)
主要是因为参数参数。
我无法找到此错误的确切解决方案。
python代码运行在哪里?在本地主机上?如果是,那么您需要将 rabbithost
更改为 127.0.0.1
或在 /etc/hosts
中为 127.0.0.1 rabbithost
创建一个主机条目
我正在尝试从 localhost:5000 上托管的 python 服务器向 RabbitMQ 服务器发送消息(使用 RabbitMQ 的 docker 图像),但我收到以下信息错误:
socket.gaierror gaierror: [Errno -2] Name or service not known
我是 运行 RabbitMQ 的 docker 图像,使用命令 'rabbithost' 是我使用的主机名:
sudo docker run -d --hostname rabbithost --name rabbitmq -p 15672:15672 -p 5672:5672 -p 5671:5671 rabbitmq:3-management
这是给出错误的 python 代码:
def send_to_queue(message):
credentials = pika.PlainCredentials('guest', 'guest')
parameters = pika.ConnectionParameters('rabbithost', 5672, '/', credentials)
connection = pika.BlockingConnection(parameters)
channel = connection.channel()
channel.queue_declare(queue='hello')
channel.basic_publish(exchange='', routing_key='hello',body=message)
connection.close()
return "Message Sent! "
错误在行:
connection = pika.BlockingConnection(parameters)
主要是因为参数参数。 我无法找到此错误的确切解决方案。
python代码运行在哪里?在本地主机上?如果是,那么您需要将 rabbithost
更改为 127.0.0.1
或在 /etc/hosts
中为 127.0.0.1 rabbithost