1. Project Overview & Quickstart (rabbitmq/rabbitmq-server)
RabbitMQ Server
RabbitMQ is a feature rich,
multi-protocol messaging and streaming broker. It supports:
- AMQP 1.0
- AMQP 0-9-1
- RabbitMQ Stream Protocol
- MQTT 3.1, 3.1.1, and 5.0
- STOMP 1.0 through 1.2
- MQTT over WebSocket
- STOMP over WebSocket
- AMQP 1.0 over WebSocket (supported in VMware Tanzu RabbitMQ)
Installation
- Currently supported released series
- Installation guides for various platforms
- Kubernetes Cluster Operator
- Changelog
- Releases on GitHub
- Community Support Eligibility Policy
- Supported Erlang versions
Tutorials and Documentation
Some key doc guides include
- CLI tools guide
- Clustering and Cluster Formation
- Configuration guide
- Client libraries and tools
- Upgrading
- Kubernetes Cluster Operator
- Quorum queues: a replicated, data safety- and consistency-oriented queue type
- Streams: a persistent and replicated append-only log with non-destructive consumer semantics
- Runtime Parameters
- Policies
- Monitoring and Prometheus/Grafana
- Production checklist
RabbitMQ documentation is also developed on GitHub.
Commercial Features and Support
- Commercial editions of RabbitMQ
- Commercial edition for Kubernetes
- Commercial support from Broadcom for open source RabbitMQ
Getting Help from the Community
Please read the Community Support Eligibility Policy document
first.
The recommended community forums are
- GitHub Discussions
- Community Discord server
#rabbitmqon Libera Chat
Contributing
See CONTRIBUTING.md and our development process overview.
Questions about contributing, internals and so on are very welcome in GitHub Discussions
or community Discord server in the contributors channel.
Licensing
RabbitMQ server is licensed under the MPL 2.0.
Community Support Eligibility Policy
document explains the open source RabbitMQ support policy adopted by the RabbitMQ Core Team.
AI Agent Instructions
See AGENTS.md.
Building From Source and Packaging
Copyright
(c) 2007-2026 Broadcom. All Rights Reserved. The term βBroadcomβ refers to Broadcom Inc. and/or its subsidiaries.
2. Official Technical Reference & Guides (rabbitmq/rabbitmq-website)
File: README.md
Website
This repository contains the source code of the RabbitMQ website, rabbitmq.com.
Please make sure to read the Workflow section before contributing.
Before You Start: Please Sign Our Contributor CLA
If this is your first contribution to RabbitMQ and it involves more than a typo fix,
please sign our contributor CLA.
The process involves one email and one online signature using a legally binding digital signature service.
Sorry about this annoyance and thank you!
Contribution Workflow
TL;DR
This repository contains documentation guides for multiple RabbitMQ release series.
Therefore, the very first question to consider before making any changes is:
what editions (versions) does my change apply to? Should I update just the next release edition,
all 4.x ones or even 3.13.x?
Here is a summary of which version of the documentation corresponds to which
branch and directory:
| Version of RabbitMQ | Branch | Sub-directory | Served at |
|---|---|---|---|
| Development version (4.4) | main |
docs |
www.rabbitmq.com/docs/next |
| 4.3 | main |
versioned_docs/version-4.3 |
www.rabbitmq.com/docs |
| 4.2 | main |
versioned_docs/version-4.2 |
www.rabbitmq.com/docs/4.2 |
| 4.1 | main |
versioned_docs/version-4.1 |
www.rabbitmq.com/docs/4.1 |
| 4.0 | main |
versioned_docs/version-4.0 |
www.rabbitmq.com/docs/4.0 |
| 3.13 | main |
versioned_docs/version-3.13 |
www.rabbitmq.com/docs/3.13 |
| 3.12 | v3.12.x |
root | (no longer available) |
Branches and Versioning
The main branch is the production branch. Commits to it are deployed
automatically to www.rabbitmq.com.
All editions (versions) of the docs live side by side in the main branch.
Docusaurus uses the following directories:
docscontains the docs of the future version of RabbitMQ, thus it is the
work in progress. It is served at rabbitmq.com/docs/nextversioned_docscontains one directory per version; for example,versioned_docs/version-4.1. The latest version is served at
rabbitmq.com/docs. Older versions are served atβ¦/docs/$version, for example rabbitmq.com/docs/3.13.
Changes should be made to docs and to any version they apply. Here is an
example:
# Make changes to the future versionβs docs.
$EDITOR docs/configure.md
# Test the change in a browser.
npm start
# Once happy, apply to the relevant older release series
cd versioned_docs/version-4.0
git diff ../../docs | patch -p2
# Test again in a browser.
npm start
# Commit everything.
git add docs versioned_docs
git commitPlease read the documentation on versioning in Docusaurus to learn more.
Older versions of the docs that we donβt want to host in Docusaurus to limit
the number of versions are put in branches of the form v3.13.x, v4.0.x,
etc. These branches are deployed automatically too and they use domain names of
the form v3-13.rabbitmq.com, v4-0.rabbitmq.com, etc. respectively. Note
that these branches used as examples may not exist yet if the corresponding
docs are still maintained in the main branch.
How to Build the Site
This website is built using Docusaurus 3, a modern
static website generator.
Dependency Installation
You need to install JS components used by Docusaurus first with yarn or npm.
The examples below use npm.
# for NPM users
npm installYou need to do this once only.
Local Development
The following command starts a local development server and opens up a default browser
window. Most changes are reflected live without having to restart the server.
npm startTo use a different browser, for example, Brave Beta, set the BROWSER env variable
when running npm start:
BROWSER="Brave Beta" npm startBuild
The following command generates static content into the build directory and
can be served using any static contents hosting service.
npm run docusaurus '--' build '--dev'This is important to run this command before pushing changes to GitHub to make
sure the build is successful. This is the command that will be used to deploy
the website in production.
How to Add a New Version Series
When a new version series comes out, a separate edition of the docs must
be explicitly added using
# adds a series for 4.3.x
npm run docusaurus docs:version 4.3Copyright and License
Β© 2007-2025 Broadcom. All Rights Reserved. The term "Broadcom" refers to
Broadcom Inc. and/or its subsidiaries.
The RabbitMQ documentation is dual-licensed under the Apache License 2.0 and
the Mozilla Public License 2.0. Users can choose any of these licenses
according to their needs. However, the blog is excluded from this license and
remains the intellectual property of Broadcom Inc. Blog posts may not be
redistributed.
SPDX
SPDX-License-Identifier: Apache-2.0 OR MPL-2.0
File: docs/index.md
title: RabbitMQ Documentation
import {
RabbitMQServerReleaseBranch,
RabbitMQServerVersion,
} from '@site/src/components/RabbitMQServer';
RabbitMQ Documentation
Welcome to RabbitMQ documentation!
:::note
You are currently viewing the documentation for RabbitMQ
:::
Documentation is Versioned
Use the drop-down menu on the top right of any page
Click the hamburger icon at the top left and then click Back to main menu
to select the documentation version for the RabbitMQ release that you are
using. We update each version of documentation with the latest patch
information for that release.
Table of Contents
Use the navigation on the left
Click the hamburger icon at the top left
to browse through documentation for your release of RabbitMQ. This table of
contents is structured so it can be used by the two main RabbitMQ users:
Developers and Administrators.
If you are a Developer
You might want to start with Getting Started if you are new to
RabbitMQ. These tutorials will guide you on how to use RabbitMQ.
If you are familiar with RabbitMQ, go directly to the How to Use RabbitMQ
information to start exploring it.
If you are an Administrator
The table of contents for administrators is structured this way:
- The How to Manage RabbitMQ section provides documentation for configuring
and managing the RabbitMQ broker. - The How to Monitor RabbitMQ section includes information which will guide
you on how to setup monitoring for RabbitMQ and the applications that use it.