RabbitMQ安装和使用(docker版本)
1. 查找镜像:(management 版本的镜像才有管理界面)docker search rabbitmq:management2. 拉取镜像:docker pull docker.io/macintoshplus/rabbitmq-management3.重命名该镜像为 rabbitmqdocker tag 旧镜像名 新镜像名4.启动容器docker run -d --hostname cbw
1. 查找镜像:(management 版本的镜像才有管理界面)
docker search rabbitmq:management
2. 拉取镜像:
docker pull docker.io/macintoshplus/rabbitmq-management
3. 重命名该镜像为 rabbitmq
docker tag 旧镜像名 新镜像名
4.启动容器
docker run -d --hostname cbw-rabbit --name rabbitmq -e RABBITMQ_DEFAULT_USER=cbw -e RABBITMQ_DEFAULT_PASS=cbw -p 15672:15672 rabbitmq
hostname主机名(区分集群中节点)
name容器名
RABBITMQ_DEFAULT_USER用户名
RABBITMQ_DEFAULT_PASS密码
rabbitmq镜像名
5.报错
docker: Error response from daemon: driver failed programming external connectivity on endpoint rabbitmq (48822965eea1d3b097ea0e8efac7b96545c9b8e2f30072ddd4f9aebef52cf3b2): (iptables failed: iptables --wait -t nat -A DOCKER -p tcp -d 0/0 --dport 15672 -j DNAT --to-destination 172.17.0.2:15672 ! -i docker0: iptables: No chain/target/match by that name.
解决:重启防火墙systemctl restart firewalld
6.查看容器运行日志
docker logs rabbitmq
7.登录管控台
ip:15672
8.创建vhost虚拟机以及给用户设置操作vhost权限都可在管控台设置。
9.java客户端连接rabbitmq被拒绝
Exception in thread "main" java.net.ConnectException: Connection refused: connect
问题:没有在防火墙中开放5672以及15672两个端口号
解决办法:在开启防火墙状态下添加这两个端口号
sudo firewall-cmd --add-port=15672/tcp --permanent
sudo firewall-cmd --add-port=5672/tcp --permanent
或者
firewall-cmd --zone=public --add-port=5672/tcp --permanent # 开放5672端口
firewall-cmd --zone=public --remove-port=5672/tcp --permanent #关闭5672端口
firewall-cmd --zone=public --add-port=25672/tcp --permanent
firewall-cmd --reload # 配置立即生效
firewall-cmd --zone=public --list-ports # 查看防火墙所有开放的端口
10.java客户端连接rabbitmq超时
Exception in thread "main" java.net.ConnectException: Connection timed out: connect
更多推荐
所有评论(0)