记录一次docker安装rabbitMq
docker查看当前镜像
docker images
参考链接:https://www.linuxprobe.com/docker-rabbitmq.html
删除当前镜像
docker rmi rabbitmq
重新pull镜像
docker pull rabbitmq:management --拉取带web管理界面的镜像
查看镜像是否拉取下来
docker images
创建rabbitMq容器
docker run -d --hostname my-rabbit -p 5671:5671 -p 5672:5672 -p 4369:4369 -p 25672:25672 -p 15671:15671 -p 15672:15672 --name rabbit rabbitmq:management
说明:
-d 后台运行容器;
--hostname 主机名(RabbitMQ的一个重要注意事项是它根据所谓的 “节点名称” 存储数据,默认为主机名);
-p 指定服务运行的端口(5672:应用访问端口;15672:控制台Web端口号);
--name 指定容器名;
默认账号密码:guest/guest
启动rabbitMq 容器
docker start rabbit
查看docker 运行中的镜像
docker ps
可以看到容器已经启动,浏览器访问http://ip:15672/ --ip为服务器ip
登录账号密码,默认为guest/guest
正常打开说明rabbit安装成功
阿里云服务器上需求配置端口权限
防火墙添加开发端口
firewall-cmd --zone=public --add-port=15672/tcp --permanent
firewall-cmd --zone=public --add-port=5672/tcp --permanent
firewall-cmd --reload
docker-compose 安装rabbit集群
docker-compose.yml
version: '3'
services:
rabbitmq1:
image: rabbitmq:management
ports:
- "15672:15672"
- "5672:5672"
hostname: rabbitmq1
container_name: rabbitmq1
environment:
- RABBITMQ_ERLANG_COOKIE=rabbitcookie
volumes:
- /data/docker/data/rabbitmq/rabbitmq1:/root/docker/rabbitMq
- /etc/localtime:/root/docker/rabbitMq/localtime
rabbitmq2:
image: rabbitmq:management
ports:
- "5673:5672"
hostname: rabbitmq2
container_name: rabbitmq2
environment:
- RABBITMQ_ERLANG_COOKIE=rabbitcookie
volumes:
- /data/docker/data/rabbitmq/rabbitmq2:/root/docker/rabbitMq
- /etc/localtime:/root/docker/rabbitMq/localtime
进入rabbitmq2容器
docker exec -ti rabbitmq2 /bin/bash
执行
'rabbitmqctl stop_app'
'rabbitmqctl reset'
'rabbitmqctl join_cluster --ram rabbit@rabbitmq1'
'rabbitmqctl start_app'