Docker安装RabbitMQ
前言:使用安装包安装RabbitMQ是一件很不容易的事,因为RabbitMQ是erlang语言写的,所需要先安装erlang语言,而且erlang版本直接影响到了RabbitMQ的版本,还要考虑兼容性的问题,两个程序安装过程都可能出现问题。
我自己尝试了两次都失败了 - -!使用Docker镜像就省事多了,过程如下:
1. 查找Docker Hub上的RabbitMQ镜像
命令:docker search rabbitmq
示例:
2. 拉取官方的镜像
命令:docker pull rabbitmq (镜像未配有控制台)
docker pull rabbitmq:management (镜像配有控制台)
示例:
3. 查看本地镜像列表
命令:docker images | grep rabbitmq
示例:
4. 运行镜像
命令:docker run --name rabbitmq -d -p 15672:15672 -p 5672:5672 rabbitmq:management
实例:
命令说明:
--name : 镜像的名称
-p 15672:15672:将容器的15672端口映射到主机的15672端口,这是控制台端口。
-p 5672:5672:将容器的5672端口映射到主机的5672端口,这是MQ端口。
5. 容器操作
启动容器,命令:docker start rabbitmq
停止容器,命令:docker stop rabbitmq
重启容器,命令:docker restart rabbitmq
进入容器,命令:docker exec -it rabbitmq bash
6. 登录控制台
地址:http://localhost:15672/ (换成自己服务器的IP)
RabbitMQ默认的用户名:guest,密码:guest
安装到此结束。
7. 设置用户名密码
既然有管理后台了,用guest登录管理后台,进入Admin页面,可以新增账号,记得增加Administrator权限。
有新账号之后就可以把guest账号删了。
8. 我遇到的错误:
1. WARNING: IPv4 forwarding is disabled. Networking will not work.
在使用run命令启动容器时报这个错误,解决方法如下:
打开配置文件,命令:vi /etc/sysctl.conf
配置文件中添加这条命令:net.ipv4.ip_forward=1
保存重启network服务,命令:systemctl restart network
查看结果,返回1表示设置成功,命令:sysctl net.ipv4.ip_forward
配置完之后要删除报错的容器,在重新执行run命令。