How to install RabbitMQ on Ubuntu 18.04
Step 0: Install newest version of Erlang
$ wget -O- https://packages.erlang-solutions.com/ubuntu/erlang_solutions.asc | sudo apt-key add -
$ echo "deb https://packages.erlang-solutions.com/ubuntu bionic contrib" | sudo tee /etc/apt/sources.list.d/erlang.list
then:
sudo apt update
sudo apt install erlang
Check Erlang version:
$ erl -eval 'erlang:display(erlang:system_info(otp_release)), halt().' -noshell
Step 1: Add RabbitMQ Repository To Ubuntu 18.04
$ wget -O- https://dl.bintray.com/rabbitmq/Keys/rabbitmq-release-signing-key.asc | sudo apt-key add -
$ wget -O- https://www.rabbitmq.com/rabbitmq-release-signing-key.asc | sudo apt-key add -
then:
$ echo "deb https://dl.bintray.com/rabbitmq/debian $(lsb_release -sc) main" | sudo tee /etc/apt/sources.list.d/rabbitmq.list
Step 2: Install RabbitMQ Server Ubuntu 18.04 LTS
To install RabbitMQ Server Ubuntu 18.04, update apt list, then install rabbitmq-server
package:
sudo apt update
sudo apt install rabbitmq-server
Check status:
sudo systemctl status rabbitmq-server.service
or
sudo service rabbitmq-server status
Check RabbitMQ version:
sudo rabbitmqctl status | grep RabbitMQ
Check if the service is configured to start on boot or not:
$ systemctl is-enabled rabbitmq-server.service
enabled
If it returns disabled, enable it by running:
sudo systemctl enable rabbitmq-server
Step 3: Check your firewall
After installing RabbitMQ, ufw
is enabled and configured by default. If you don’t want that, you can disable it by this command:
sudo ufw disable
Step 4: Enable the RabbitMQ Management Dashboard (Optional)
You can optionally enable the RabbitMQ Management Web dashboard for easy management.
sudo rabbitmq-plugins enable rabbitmq_management
The Web service should be listening on TCP port 15672
.
Double if the port is listening:
$ ss -tunelp | grep 15672
tcp LISTEN 0 1024 0.0.0.0:15672 0.0.0.0:* uid:132 ino:1577718 sk:3d <->
By default, the guest user exists and can connect only from localhost
. You can point your browser to http://localhost:15672 and login with this user locally with the password “guest”.
To be able to login on the network, create an admin user like below:
sudo rabbitmqctl add_user admin StrongPassword
sudo rabbitmqctl set_user_tags admin administrator
RabbitMQ User Management Commands
Delete User:
sudo rabbitmqctl delete_user user
Change User Password:
sudo rabbitmqctl change_password user strongpassword
Create new Virtualhost:
sudo rabbitmqctl add_vhost /my_vhost
List available Virtualhosts:
sudo rabbitmqctl list_vhosts
Delete a virtualhost:
sudo rabbitmqctl delete_vhost /myvhost
Grant user permissions for vhost:
sudo rabbitmqctl set_permissions -p /myvhost user ".*" ".*" ".*"
List vhost permissions:
sudo rabbitmqctl list_permissions -p /myvhost
To list user permissions:
sudo rabbitmqctl list_user_permissions user
Delete user permissions:
sudo rabbitmqctl clear_permissions -p /myvhost user