安装RabbitMQ
docker的安装方式
一、进入docker hub官网
二、搜索rabbitMq,进入官方的镜像,选择带有“mangement”的版本(包含web管理页面):后面以rabbitmq:3.7.7-management这个版本为例
三、拉取镜像
docker pull rabbitmq:3.7.7-management
四、根据下载的镜像创建和启动容器
mkdir -p /home/data/rabbitmq
docker run -d --name rabbitmq_3.10.7 --restart=always -p 5672:5672 -p 15672:15672 \
--hostname rabbitmq \
-e RABBITMQ_DEFAULT_VHOST=/ \
-e RABBITMQ_DEFAULT_USER=txcf \
-e RABBITMQ_DEFAULT_PASS=txcf1234 \
-v /home/data/rabbitmq:/var/lib/rabbitmq \
rabbitmq:3.10.7-management
yum的安装方式
更新基本系统
安装任何软件包之前,建议使用以下命令更新软件包和存储库
yum -y update
安装Erlang
一、安装EPEL存储库
由于RabbitMQ是基于Erlang(面向高并发的语言)语言开发,所以在安装RabbitMQ之前,需要先安装Erlang。在本教程中我们将安装最新版本的Erlang到服务器中。 Erlang在默认的YUM存储库中不可用,因此您将需要安装EPEL存储库。 运行以下命令相同。
yum -y install epel-release;
yum -y update;
二、安装Erlang
yum -y install erlang socat;
三、检查Erlang版本。
[root@liptan-pc ~]# erl -version
Erlang (ASYNC_THREADS,HIPE) (BEAM) emulator version 5.10.4
安装RabbitMQ
RabbitMQ为预编译并可以直接安装的企业Linux系统提供RPM软件包。 唯一需要的依赖是将Erlang安装到系统中。 我们已经安装了Erlang,我们可以进一步下载RabbitMQ。 通过运行下载Erlang RPM软件包。
一、下载RabbitMQ
wget https://www.rabbitmq.com/releases/rabbitmq-server/v3.6.10/rabbitmq-server-3.6.10-1.el7.noarch.rpm
如果你没有安装wget ,可以运行yum -y install wget 。 您可以随时找到最新版本的RabbitMQ下载页面的链接。
二、安装RabbitMQ
1)、通过运行导入GPG密钥:
rpm –import https://www.rabbitmq.com/rabbitmq-release-signing-key.asc
2)、运行RPM安装RPM包:
rpm -Uvh rabbitmq-server-3.6.10-1.el7.noarch.rpm
RabbitMQ现已经安装在系统上。
3)、使用RabbitMQ
运行
systemctl start rabbitmq-server
开机自启
systemctl enable rabbitmq-server
检查状态
systemctl status rabbitmq-server
停止
rabbitmqctl stop
访问Web控制台
4)、启动RabbitMQ Web管理控制台,方法是运行:
启动web访问
rabbitmq-plugins enable rabbitmq_management
关闭web访问
rabbitmq-plugins disable rabbitmq_management
创建用户
现在,您将需要为RabbitMQ Web管理控制台创建管理用户。 运行以下命令相同。
rabbitmqctl add_user userName password; #添加用户
rabbitmqctl set_user_tags userName target[标记]; --monitoring监控人员administrator系统管理人员management管理人员
rabbitmqctl set_permissions -p / userName ".*" ".*" ".*"; #给用户资源权限
$sudo rabbitmqctl set_permissions -p /vhost1 user_admin '.*' '.*' '.*'
该命令使用户user_admin具有/vhost1这个virtual host中所有资源的配置、写、读权限以便管理其中的资源
将管理员更改为userName用户的首选用户名。 确保将password更改为非常强大的密码。
要访问RabbitMQ的管理面板,请使用您最喜爱的Web浏览器并打开以下URL。
http://Your_Server_IP:15672/
安装延迟队列插件
下载插件
下载与安装的Rabbitmq匹配的插件,选择适合版本
rabbitmq-delayed-message-exchange
安装
上传到服务
#拷贝到rabbitmq容器 a63 中
[root@worker10-152 ~]# docker cp rabbitmq_delayed_message_exchange-3.8.0.ez a63:/plugins
#进入rabbitmq容器
[root@worker10-152 ~]# docker exec -it a63 /bin/bash
#进入/plugins目录检查插件是否上传到容器中
root@a63a1b22b4a3:/# cd plugins
root@a63a1b22b4a3:/plugins# ls
README cowlib-2.9.1.ez jsx-3.1.0.ez rabbitmq_auth_backend_cache-3.8.21.ez rabbitmq_event_exchange-3.8.21.ez rabbitmq_peer_discovery_common-3.8.21.ez rabbitmq_sharding-3.8.21.ez rabbitmq_web_mqtt-3.8.21.ez sysmon_handler-1.3.0.ez
accept-0.3.5.ez credentials_obfuscation-2.4.0.ez lager-3.9.2.ez rabbitmq_auth_backend_http-3.8.21.ez rabbitmq_federation-3.8.21.ez rabbitmq_peer_discovery_consul-3.8.21.ez rabbitmq_shovel-3.8.21.ez rabbitmq_web_mqtt_examples-3.8.21.ez
amqp10_client-3.8.21.ez cuttlefish-3.0.0.ez observer_cli-1.6.2.ez rabbitmq_auth_backend_ldap-3.8.21.ez rabbitmq_federation_management-3.8.21.ez rabbitmq_peer_discovery_etcd-3.8.21.ez rabbitmq_shovel_management-3.8.21.ez rabbitmq_web_stomp-3.8.21.ez
amqp10_common-3.8.21.ez eetcd-0.3.3.ez prometheus-4.6.0.ez rabbitmq_auth_backend_oauth2-3.8.21.ez rabbitmq_jms_topic_exchange-3.8.21.ez rabbitmq_peer_discovery_k8s-3.8.21.ez rabbitmq_stomp-3.8.21.ez rabbitmq_web_stomp_examples-3.8.21.ez
amqp_client-3.8.21.ez gen_batch_server-0.8.4.ez ra-1.1.8.ez rabbitmq_auth_mechanism_ssl-3.8.21.ez rabbitmq_management-3.8.21.ez rabbitmq_prelaunch-3.8.21.ez rabbitmq_top-3.8.21.ez ranch-2.0.0.ez
aten-0.5.5.ez goldrush-0.1.9.ez rabbit-3.8.21.ez rabbitmq_aws-3.8.21.ez rabbitmq_management_agent-3.8.21.ez rabbitmq_prometheus-3.8.21.ez rabbitmq_tracing-3.8.21.ez recon-2.5.1.ez
base64url-1.0.1.ez gun-1.3.3.ez rabbit_common-3.8.21.ez rabbitmq_consistent_hash_exchange-3.8.21.ez rabbitmq_mqtt-3.8.21.ez rabbitmq_random_exchange-3.8.21.ez rabbitmq_trust_store-3.8.21.ez stdout_formatter-0.2.4.ez
cowboy-2.8.0.ez jose-1.11.1.ez rabbitmq_amqp1_0-3.8.21.ez rabbitmq_delayed_message_exchange-3.8.0.ez rabbitmq_peer_discovery_aws-3.8.21.ez rabbitmq_recent_history_exchange-3.8.21.ez rabbitmq_web_dispatch-3.8.21.ez syslog-3.4.5.ez
#启用插件
root@a63a1b22b4a3:/plugins# rabbitmq-plugins enable rabbitmq_delayed_message_exchange
Enabling plugins on node rabbit@a63a1b22b4a3:
rabbitmq_delayed_message_exchange
The following plugins have been configured:
rabbitmq_delayed_message_exchange
rabbitmq_management
rabbitmq_management_agent
rabbitmq_prometheus
rabbitmq_web_dispatch
Applying plugin configuration to rabbit@a63a1b22b4a3...
The following plugins have been enabled:
rabbitmq_delayed_message_exchange
started 1 plugins.
root@a63a1b22b4a3:/plugins# exit
exit
#重启容器
[root@worker10-152 ~]# docker restart a63
a63
注意:本文归作者所有,未经作者允许,不得转载