Ubuntu16.04安装rabbitmq(实战)
安装Erlang
由于RabbitMQ需要基于Erlang/OTP,所以在安装RabbitMQ之前需要先安装Erlang/OTP。同样的,在Ubuntu标准的repositories中,Erlang/OTP的版本很老,推荐不要直接安装在Ubuntu标准的repositories中Erlang/OTP,而是安装新版本。
添加地址
首先执行下面两个命令,添加Erlang自己的仓库地址到你本地。
wget https://packages.erlang-solutions.com/erlang-solutions_1.0_all.deb
sudo dpkg -i erlang-solutions_1.0_all.deb
或者你可以手动添加仓库地址至本地。 添加下面代码至你本地/etc/apt/sources.list中,注意把下面的{distribution}(包括大括号)替换成你自己系统的distribution。
deb https://packages.erlang-solutions.com/ubuntu {distribution} contrib
如果不知道自己系统的distribution是什么,可以输入lsb_release -c查看,我自己的系统是Ubuntu16.04,对应的distribution是xenial,所以我添加进/etc/apt/sources.list的命令是
deb https://packages.erlang-solutions.com/ubuntu xenial contrib
下一步用下面的命令来添加Erlang公钥
wget https://packages.erlang-solutions.com/ubuntu/erlang_solutions.asc
sudo apt-key add erlang_solutions.asc
开始安装Erlang
用下面的命令刷新本地apt-get仓库的缓存,然后安装Erlang。
sudo apt-get update
sudo apt-get install erlang
安装rabbitmq-server
添加rabbitmq仓库地址
同样的下面的像上文所说的一样将下面的{distribution}(包括大括号)替换成你自己系统的distribution。
echo "deb https://dl.bintray.com/rabbitmq/debian {distribution} main" | sudo tee /etc/apt/sources.list.d/bintray.rabbitmq.list
添加rabbitmq仓库公钥
wget -O- https://dl.bintray.com/rabbitmq/Keys/rabbitmq-release-signing-key.asc | sudo apt-key add -
用下面的命令刷新本地apt-get仓库的缓存,然后安装rabbitmq-server。
sudo apt-get update
sudo apt-get install rabbitmq-server
至此rabbitmq-server安装完毕。
启用 RabbitMQ web 管理插件
$ sudo rabbitmq-plugins enable rabbitmq_management
1
重启服务器
$ sudo systemctl restart rabbitmq-server
1
打开浏览器输入 http://localhost:15672,默认用户名密码:guest/guest,就可以看到管理界面了。
![](https://img2018.cnblogs.com/blog/1673804/201905/1673804-20190515171408830-13979412.png)
注意:rabbitmq的guest超级用户,默认只能在localhost下使用,要使用远程登录,需要另行配置!!
配置方法如下:
安装好 rabbitmq 之后,在 /etc/rabbitmq
目录下面默认没有配置文件,需要单独下载,可以到https://github.com/rabbitmq/rabbitmq-server/blob/master/docs/rabbitmq.conf.example
下载之后,重命名为 rabbitmq.config
,接着找到有 loopback_users
的地方,去掉注释,修改为这样,注意!后面没有逗号!
修改好的 rabbitmq.config 文件放到/etc/rabbitmq 目录下面。
接着重启服务器
$ sudo systemctl restart rabbitmq-server
1
再打开浏览器就可以在其他地址下登录了。
常用命令
这里有些概念需要明确一下,当启动 rabbitmq 之后,其实是启动了一个 Erlang 节点,然后 rabbitmq 作为应用程序运行在 Erlang 节点之上。通过下面命令的参数,也能反映出来这些差别。
关闭 rabbitmq (但是没有关闭节点)
$ rabbitmqctl stop_app
1
启动 rabbitmq
$ rabbitmqctl start_app
1
关闭 rabbitmq 以及节点
$ rabbitmqctl stop
1
由于上面的命令把 rabbitmq 以及节点都关闭了,所以要使用如下命令启动 rabbitmq,-detached 参数表示以守护程序的方式在后台运行
$ rabbitmq-server -detached
部分内容转自:https://blog.csdn.net/nextyu/article/details/79250174