1.拉取rabbitmq最新镜像
docker pull rabbitmq
镜像已成功拉取
2.启用镜像
docker run -p 15672:15672 -p 5672:5672 -p 25672:25672 -p 61613:61613 -p 1883:1883 --name rabbitmq -e RABBITMQ_DEFAULT_USER=admin -e RABBITMQ_DEFAULT_PASS=admin -d rabbitmq:latest
-p指定端口映射 --name指定容器名称 -e RABBITMQ_DEFAULT_USER 指定用户名 -e RABBITMQ_DEFAULT_PASS=admin指定密码 rabbitmq:latest 版本号
端口访问
RabbitMQ节点绑定到端口(开放服务器TCP套接字),以便接受客户端和CLI工具连接。其他进程和工具,例如SELinux,可能会阻止RabbitMQ绑定到端口。发生这种情况时,该节点将无法启动。
CLI工具,客户端库和RabbitMQ节点也可以打开连接(客户端TCP套接字)。防火墙可以防止节点和CLI工具相互通信。确保可以访问以下端口:
- 4369:epmd,RabbitMQ节点和CLI工具使用的对等发现服务
- 5672、5671:由不带TLS和带TLS的AMQP 0-9-1和1.0客户端使用
- 25672:用于节点间和CLI工具通信(Erlang分发服务器端口),并从动态范围分配(默认情况下限制为单个端口,计算为AMQP端口+ 20000)。除非确实需要这些端口上的外部连接(例如,群集使用联合身份验证或在子网外部的计算机上使用CLI工具),否则这些端口不应公开。有关详细信息,请参见网络指南。
- 35672-35682:由CLI工具(Erlang分发客户端端口)用于与节点进行通信,并从动态范围(通过服务器分发端口+ 10010计算为服务器分发端口+ 10000)分配。有关详细信息,请参见网络指南。
- 15672:HTTP API客户端,管理UI和Rabbitmqadmin (仅在启用了管理插件的情况下)
- 61613、61614:不带TLS和带TLS的STOMP客户端(仅在启用了STOMP插件的情况下)
- 1883、8883:不启用和启用TLS的MQTT客户端(如果启用了MQTT插件)
- 15674:STOMP-over-WebSockets客户端(仅在启用了Web STOMP插件的情况下)
- 15675:MQTT-over-WebSockets客户端(仅在启用Web MQTT插件的情况下)
- 15692:Prometheus指标(仅在启用Prometheus插件的情况下)
可以将RabbitMQ配置 为使用不同的端口和特定的网络接口。
----摘抄自官档 https://www.rabbitmq.com/networking.html
3.若防火墙开启,需开启centos端口访问
查看端口是否开放
firewall-cmd --query-port=15672/tcp
firewall-cmd --query-port=5672/tcp
开放端口
firewall-cmd --permanent --add-port=15672/tcp
firewall-cmd --permanent --add-port=5672/tcp
重启防火墙
service firewalld restart
4.添加后台访问
sudo docker exec -it 7de /bin/bash (-----7de换-----)
rabbitmq-plugins enable rabbitmq_management
账号admin 密码 admin 在docker run设置
后续待更新..