步骤一:因为rabbitmq需要erlang语言环境的支持,先在ubuntu环境中安装erlang
官方下载地址:
-
下载1:官方地址 https://www.erlang.org/downloads
-
下载2:erlang solutions地址: https://www.erlang-solutions.com/downloads/
Ubuntu中直接使用apt安装erlang
直接使用 sudo apt install erlang 安装的是默认源可能不是较新的。
下面先更新一下apt源
# 1. 在/etc/apt/sources.list.d 下新建erlang-solution.list文件
sudo touch /etc/apt/sources.list.d/erlang-solution.list
# 2. 加入如下内容: deb https://packages.erlang-solutions.com/ubuntu trusty contrib
echo "deb https://packages.erlang-solutions.com/ubuntu trusty contrib" | sudo tee /etc/apt/sources.list.d/erlang-solution.list
# 3 安装key
wget -O- https://packages.erlang-solutions.com/ubuntu/erlang_solutions.asc | sudo apt-key add -
# 4 安装方式
sudo apt-get update
sudo apt-get install erlang
测试
#查看版本号
erl -eval 'erlang:display(erlang:system_info(otp_release)), halt().' -noshell
卸载
#apt 安装方式的卸载
sudo apt remove erlang
sudo apt autoremove
步骤二:使用docker安装rabbitmq
1. 先在官网上查看与erlang版本相匹配的rabbitmq的版本号
官网地址
https://www.rabbitmq.com/download.html
2、下载rabbitmq镜像
#下载最新版本:
sudo docker pull rabbitmq
#下载指定版本:
sudo docker pull rabbitmq:3.10.7
#查看docker镜像列表:
sudo docker images
#删除某镜像:
sudo docker rmi image_id(镜像的id)
3、创建并运行rabbitmq容器
sudo docker run -d -p 15672:15672 -p 5672:5672 \
-e RABBITMQ_DEFAULT_VHOST=my_vhost \
-e RABBITMQ_DEFAULT_USER=admin \
-e RABBITMQ_DEFAULT_PASS=admin \
--hostname myRabbit \
--name rabbitmq \
rabbitmq
参数说明:
-
-d:表示在后台运行容器;
-
-p:将容器的端口 5672(应用访问端口)和 15672 (控制台Web端口号)映射到主机中;
-
-e:指定环境变量:
- RABBITMQ_DEFAULT_VHOST:默认虚拟机名;
- RABBITMQ_DEFAULT_USER:默认的用户名;
- RABBITMQ_DEFAULT_PASS:默认的用户密码;
-
–hostname:指定主机名(RabbitMQ 的一个重要注意事项是它根据所谓的 节点名称 存储数据,默认为主机名);
-
–name rabbitmq:设置容器名称;
-
rabbitmq:容器使用的镜像名称;
查看启动情况:
sudo docker ps -l
------------
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
72072ace59f0 rabbitmq "docker-entrypoint.s…" 12 seconds ago Up 9 seconds 4369/tcp, 0.0.0.0:5672->5672/tcp, :::5672->5672/tcp, 5671/tcp, 15691-15692/tcp, 25672/tcp, 0.0.0.0:15672->15672/tcp, :::15672->15672/tcp rabbitmq
如果需要查看所有的容器情况
sudo docker ps -a
当想删除的某个镜像正在被某个容器使用时,需先停止运行该容器,然后删除该容器,最后才能删除该镜像
sudo docker stop container_id(容器id)
sudo docker rm container_id(容器id)
sudo docker rm image_id(镜像id)
4、启动rabbitmq_management
sudo docker exec -it rabbitmq(容器名称或者容器id) rabbitmq-plugins enable rabbitmq_management
5、访问rabbitmq后台管理系统
浏览器输入地址:http://ip:15672 即可访问后台管理页面,这里的 ip 为运行 RabbitMQ 所在的服务器的 IP 地址;
默认的用户名和密码都是 guest(前提是没有在容器创建的时候指定用户名密码),但是guest用户只能在本地localhost登录,如果想要远程登录需重新创建一个角色,并赋予该角色Adminstrator权限;
#查看rabbit mq 用户列表:
docker exec -it rabbitmq(容器名称或者容器id) rabbitmqctl list_users
#添加管理员账号和密码:
docker exec -it rabbitmq(容器名称或者容器id) rabbitmqctl add_user admin admin
#分配账号角色:
docker exec -it rabbitmq(容器名称或者容器id) rabbitmqctl set_user_tags administrator
#修改密码(要修改一次密码,否则无法远程登录):
docker exec -it rabbitmq(容器名称或者容器id) rabbitmqctl change_password admin 123456
在浏览器中输入地址:http://ip:15672/
用户名:admin
密码:123456
登录进去后的管理页面如下:
提示: 如果无法访问可以尝试开启防火墙 15672 端口:
firewall-cmd --zone=public --add-port=15672/tcp --permanent
firewall-cmd --reload