当前位置:实例文章 » 其他实例» [文章]Linux环境下,通过Docker搭建及配置RabbitMQ

Linux环境下,通过Docker搭建及配置RabbitMQ

发布人:shili8 发布时间:2024-12-27 23:14 阅读次数:0

**Linux环境下,通过Docker搭建及配置RabbitMQ**

在 Linux 环境下,使用 Docker 搭建 RabbitMQ服务是一个非常方便的方法。RabbitMQ 是一个开源的消息队列服务器,支持多种协议和语言。以下是如何通过 Docker 搭建并配置 RabbitMQ 的步骤。

### **1. 安装 Docker**

首先,我们需要安装 Docker。可以使用以下命令来安装 Docker:

bashsudo apt-get updatesudo apt-get install docker.io -y


或者,如果你使用的是 CentOS 或 Fedora,可以使用以下命令:

bashsudo yum install docker -y


### **2. 启动 Docker服务**

启动 Docker服务:

bashsudo systemctl start docker


设置 Docker服务开机自启:

bashsudo systemctl enable docker


### **3. 拉取 RabbitMQ 镜像**

拉取 RabbitMQ 的镜像:

bashdocker pull rabbitmq:latest


或者,如果你想使用特定的版本,可以指定版本号:

bashdocker pull rabbitmq:3-management-alpine


### **4. 创建 RabbitMQ 容器**

创建一个名为 `rabbitmq` 的容器,映射端口5672 和15672 到主机:

bashdocker run -d --name rabbitmq 
-p5672:5672 
-p15672:15672 
-v /var/lib/rabbitmq/:/var/lib/rabbitmq/ 
rabbitmq:latest


这里,我们使用 `-v` 参数来映射主机上的 `/var/lib/rabbitmq/` 目录到容器内的 `/var/lib/rabbitmq/` 目录,这样可以持久化 RabbitMQ 的数据。

### **5. 配置 RabbitMQ**

进入容器内部:

bashdocker exec -it rabbitmq bash


使用 `rabbitmqctl` 命令来配置 RabbitMQ:

bashrabbitmqctl add_user admin adminrabbitmqctl set_permissions -p / admin ".*" ".*" ".*"
rabbitmqctl change_password admin admin


这里,我们创建一个名为 `admin` 的用户,并赋予其所有权限。

### **6. 验证 RabbitMQ**

使用浏览器访问 ` 来验证 RabbitMQ 是否正常工作:

![RabbitMQ]( />
### **7. 使用 RabbitMQ**

现在,你可以使用 RabbitMQ 来发送和接收消息了。例如,使用 `amqp` 库来发送一个消息:

import amqpconnection = amqp.Connection('localhost',5672, 'guest', 'guest')
channel = connection.channel()

channel.queue_declare(queue='hello')

channel.basic_publish(exchange='',
 routing_key='hello',
 body='Hello World!')

print(" [x] Sent 'Hello World!'")

connection.close()


使用 `amqp` 库来接收一个消息:

import amqpconnection = amqp.Connection('localhost',5672, 'guest', 'guest')
channel = connection.channel()

channel.queue_declare(queue='hello')

def callback(ch, method, properties, body):
 print(" [x] Received %r" % (body,))
 channel.basic_ack(delivery_tag=method.delivery_tag)

channel.basic_consume(callback,
 queue='hello',
 no_ack=True)

print(' [*] Waiting for messages. To exit press CTRL+C')

channel.start_consuming()


以上就是如何通过 Docker 搭建并配置 RabbitMQ 的步骤。

其他信息

其他资源

Top