RabbitMQ Install on macOS
Installing RabbitMQ on macOS is easiest using Homebrew, the popular macOS package manager. If you do not have Homebrew yet, you will install it first. This guide gets RabbitMQ running on your Mac in under ten minutes.
Prerequisites
- macOS 12 Monterey or newer (works on Intel and Apple Silicon Macs)
- Terminal access
- Homebrew (instructions below if you do not have it)
Step 1 – Install Homebrew (If Not Already Installed)
Open the Terminal app and paste this command:
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
Follow the on-screen prompts. Homebrew installs in a few minutes. Verify it works:
brew --version
Step 2 – Install Erlang
RabbitMQ requires Erlang. Homebrew installs the correct version automatically when you install RabbitMQ, but you can also install it separately:
brew install erlang
Verify the installation:
erl -version
Step 3 – Install RabbitMQ
brew install rabbitmq
Homebrew downloads and installs RabbitMQ along with all required dependencies. At the end, Homebrew prints helpful notes about starting the service.
Step 4 – Add RabbitMQ to Your PATH
Homebrew installs RabbitMQ binaries to a directory that may not be in your default PATH. Add it so you can run rabbitmq-server and rabbitmqctl from anywhere in Terminal.
For Zsh (default on macOS Catalina and later), add this to ~/.zshrc:
export PATH=$PATH:/opt/homebrew/sbin
For Intel Macs (Homebrew installs to /usr/local):
export PATH=$PATH:/usr/local/sbin
Reload your shell:
source ~/.zshrc
Step 5 – Start RabbitMQ
Start RabbitMQ as a background service that launches automatically at login:
brew services start rabbitmq
To start RabbitMQ manually in the foreground (useful for debugging):
rabbitmq-server
Check that it is running:
brew services list
Look for rabbitmq with the status started.
Step 6 – Enable the Management Plugin
rabbitmq-plugins enable rabbitmq_management
Restart RabbitMQ to apply the plugin:
brew services restart rabbitmq
Step 7 – Open the Management UI
Open your browser and navigate to:
http://localhost:15672
Log in with:
- Username:
guest - Password:
guest
The RabbitMQ Management Dashboard loads. You can see queues, exchanges, connections, and channel statistics from here.
Stopping RabbitMQ
Stop RabbitMQ when you are not using it to free up system resources:
brew services stop rabbitmq
Common macOS Issues
Permission Denied on /var/folders
RabbitMQ may complain about log or data directory permissions. Fix this by setting the correct ownership:
sudo chown -R $(whoami) /opt/homebrew/var/log/rabbitmq sudo chown -R $(whoami) /opt/homebrew/var/lib/rabbitmq
Port Already in Use
Another process may occupy port 5672 or 15672. Find out which process uses a port:
lsof -i :5672
Stop the conflicting process, then restart RabbitMQ.
Apple Silicon (M1/M2/M3) Issues
On Apple Silicon, Homebrew installs to /opt/homebrew instead of /usr/local. Make sure your PATH points to /opt/homebrew/sbin, not /usr/local/sbin. Recent versions of Homebrew and RabbitMQ have native ARM support, so no Rosetta emulation is needed.
Creating an Admin User
For development, the default guest/guest credentials are fine when connecting from localhost. For connecting from other apps on your machine with custom settings, create a new user:
rabbitmqctl add_user devuser devpassword rabbitmqctl set_user_tags devuser administrator rabbitmqctl set_permissions -p / devuser ".*" ".*" ".*"
File Locations on macOS (Homebrew)
Binaries: /opt/homebrew/sbin/ Config: /opt/homebrew/etc/rabbitmq/ Logs: /opt/homebrew/var/log/rabbitmq/ Data: /opt/homebrew/var/lib/rabbitmq/
On Intel Macs, replace /opt/homebrew with /usr/local.
Updating RabbitMQ on macOS
brew update brew upgrade rabbitmq
Stop the service before upgrading to avoid data corruption:
brew services stop rabbitmq brew upgrade rabbitmq brew services start rabbitmq
Summary
Homebrew makes RabbitMQ installation on macOS very simple. Install Homebrew, run brew install rabbitmq, enable the management plugin, and start the service. The management UI at http://localhost:15672 confirms everything is working. For everyday development on a Mac, this setup is all you need.
