rabbitmq使用记录

RabbitMQ

消息中间件

特性简介

  • 异步消息传递 Asynchronous Messaging
  • 分布式部署 Distributed Deployment

架构原理

使用场景

下载安装


RabbitMQ Docker

Docker Official Images:https://registry.hub.docker.com/_/rabbitmq/

# 文档
Doc guides: https://rabbitmq.com/documentation.html
Support:    https://rabbitmq.com/contact.html
Tutorials:  https://rabbitmq.com/getstarted.html
Monitoring: https://rabbitmq.com/monitoring.html
# 搜索、下拉
docker search rabbitmq
docker pull rabbitmq
说明:
rabbitmq:management,带management,即web可视化界面
# 查看镜像
docker images
# 后台运行镜像,实例化容器
常用0:
docker run -d -p 5672:5672 -p 15672:15672 -v `pwd`/data:/var/lib/rabbitmq --name rabbit-server --hostname rabbit-host rabbitmq:management 
示例1:
docker run -d -it --rm --name some-rabbit --hostname my-rabbit rabbitmq:management
示例2:
docker run -d --name rabbitmq -p 4369:4369 -p 5671:5671 -p 5672:5672 -p 15671:15671 -p 15672:15672 -p 15691:15691 -p 15692:15692 -p 25672:25672 rabbitmq:management

选项说明:
-d 后台启动
-p 端口映射,<外部端口>:<容器内部端口>
-it i保持STDIN打开;t分配虚拟TTY
--rm 当容器退出时自动删除它,一般不常用
--name 容器名,给容器ID起个别名,不指定默认为容器ID
--hostname 容器主机名,域名

端口说明:
	4369/tcp, 5671-5672/tcp, 15671-15672/tcp, 15691-15692/tcp, 25672/tcp
    15672 (if management plugin is enabled);web管理端口15672 
    15671 management监听端口
    5672, 5671 (AMQP 0-9-1 without and with TLS);服务端口5672 
    4369 (epmd) epmd 代表 Erlang 端口映射守护进程
    25672 (Erlang distribution)

# 查看容器
docker ps -a
CONTAINER ID	IMAGE	COMMAND		CREATED		STATUS		PORTS	NAMES
容器ID		  镜像	命令		   创建时间		状态		  端口	 容器别名
# 进入容器虚拟终端(TTY)
docker exec -it <container name> bash
$ docker exec -it rabbit-server sh  # 同dash
$ docker exec -it rabbit-server bash  # 同rbash

# 查看容器内部IP
docker exec -it rabbit-server ls
docker exec -it rabbit-server cat /etc/hosts

热身0

docker搭建RabbitMQ:https://www.cnblogs.com/huarui/p/12773521.html

docker安装rabbitmq:https://blog.csdn.net/qq_42651904/article/details/102788538

Docker 安装rabbitMQ:http://www.mamicode.com/info-detail-2562820.html

示例1

参考文档:docker安装RabbitMQ

step1

# 拉取、查看镜像
docker pull rabbitmq:management
docker images | grep rabbitmq*
# 说明:
带有“mangement”的版本(包含web管理页面);

step2

# 创建和启动容器
# 方法1
docker run -d -p 5672:5672 -p 15672:15672 --name some-rabbit rabbitmq:management 
# 方法2
docker run -d -p 5672:5672 -p 15672:15672 -v `pwd`/data:/var/lib/rabbitmq --name rabbit-server --hostname rabbit-host rabbitmq:management 
# -e RABBITMQ_DEFAULT_VHOST=vhost 
# -e RABBITMQ_DEFAULT_USER=guest 
# -e RABBITMQ_DEFAULT_PASS=guest guest
# 说明:
    -d 后台运行容器;
    -p 指定服务运行的端口(5672:应用访问端口;15672:控制台Web端口号);
    -v 映射目录或文件;<虚机路径>:<容器路径>
    --name 指定容器名;
    -h,--hostname 容器主机名(RabbitMQ的一个重要注意事项是它根据所谓的 “节点名称” 存储数据,默认为主机名);
    -e 指定环境变量;(RABBITMQ_DEFAULT_VHOST:默认虚拟机名;RABBITMQ_DEFAULT_USER:默认的用户名;RABBITMQ_DEFAULT_PASS:默认用户名的密码)

# 查看正在运行容器
docker ps

step3

# 访问rabbitmq管理控制台
http://localhost:15672 或 http://Server-IP:15672
http://172.17.0.1:15672 # docker网址
http://192.168.31.206:15672 # 虚机网址
# 提示:
默认用户名密码:guest/guest

# 停止rabbit
docker stop <NAMES>
docker stop <CONTAINER ID>

# 启动rabbit
docker stop <NAMES>
docker start <CONTAINER ID>

# 开发rabbitMQ端口
firewall-cmd --zone=public --add-port=15672/tcp --permanentfirewall-cmd --zone=public 

示例2

参考文档:在Docker容器中安装部署RabbitMQ

# 搜索、拉取
docker search rabbitmq:management 
docker pull rabbitmq:management 
说明:
management,表明是带web管理界面的,便于管理。
# 运行
# 未映射端口
docker run -d --hostname rabbit-host --name rabbit-service rabbitmq:management 
# 需要映射端口
docker run -d --hostname rabbit-host -p 4369:4369 -p 5671:5671 -p 5672:5672 -p 15671:15671 -p 15672:15672 -p 25672:25672 --name rabbit-service rabbitmq:management 

# 查看容器
docker ps 
# 查看日志
docker logs <CONTAINER ID> 
输出:
    node           : rabbit@my-rabbit
    home dir       : /var/lib/rabbitmq
    config file(s) : /etc/rabbitmq/rabbitmq.conf
    cookie hash    : dqCUuiAJlMrxpqgh1GHL/g==
    log(s)         : <stdout>
    database dir   : /var/lib/rabbitmq/mnesia/rabbit@my-rabbit
# 浏览器访问服务器地址
访问:http://server-ip:15672 
默认的端口为:5672,web管理的端口为:15672,默认用户和密码为:guest 

示例3

参考文档:Docker中安装rabbitmq并启用插件

# search\pull
docker search rabbitmq:management
docker pull rabbitmq:management
# run
docker run -d -p 5671:5671 -p 5672:5672 -p 15671:15671  -p 15674:15674 --name some-rabbit -e RABBITMQ_DEFAULT_USER=admin -e RABBITMQ_DEFAULT_PASS=admin rabbitmq:management
解释:启动容器,映射端口,设置默认用户密码
# 1.创建Dockerfile,开启rabbitmq插件,编辑 vim Dockerfile 添加如下内容,保存退出
FROM rabbitmq:management
# MAINTAINER zhuoyi
RUN rabbitmq-plugins enable --offline rabbitmq_mqtt rabbitmq_federation_management rabbitmq_stomp

# 2.通过Dockerfile生成镜像,注:这一步必须在启动容器之后执行
docker build -f Dockerfile -t rabbitmq:management .
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值