rabbitmq
An open-source message broker that implements the Advanced Message Queuing Protocol (AMQP).
What is rabbitmq?
The rabbitmq image provides RabbitMQ, a widely used open-source message broker that implements the Advanced Message Queuing Protocol (AMQP). It facilitates asynchronous communication between distributed systems by managing queues, topics, and routing logic for messages.
RabbitMQ supports a range of messaging patterns—such as pub/sub, point-to-point, and RPC—and provides durable queues, acknowledgments, retries, dead-lettering, and clustering. It includes a web-based management UI, rich plugin system, and support for other protocols like MQTT and STOMP.
This image is commonly used in microservice architectures, job queuing systems, IoT pipelines, and event-driven backends.
How to use this image
The rabbitmq image is typically run as a standalone broker or clustered service, optionally with the management plugin enabled.
Run a basic RabbitMQ server:
<code>docker run -d --name rabbitmq -p 5672:5672 rabbitmq</code>
Run with the management UI enabled:
<code>docker run -d --name rabbitmq -p 5672:5672 -p 15672:15672 rabbitmq:management</code>
Port 5672
: AMQP protocol (used by producers/consumers)
Port 15672
: Web management UI
Persist data between restarts:
<code>docker run -d --name rabbitmq \ -p 5672:5672 -p 15672:15672 \ -v $(pwd)/data:/var/lib/rabbitmq \ rabbitmq:management</code>
Default credentials:
- Username:
guest
- Password:
guest
(Accessible only from localhost by default)
{{cta}}
Image variants
Published under rabbitmq, the image includes multiple variants depending on feature sets and base OS:
rabbitmq:latest
Base RabbitMQ image with default plugins and no management UI.Use when building a lightweight messaging backend.
rabbitmq:management
Includes the RabbitMQ Management Plugin and web UI.Use for interactive management, monitoring, and debugging.
rabbitmq:<version> / rabbitmq:<version>-management
Versioned tags (e.g. 3.13.2
, 3.12.12-management
).
Recommended for production use to ensure compatibility across environments.•
rabbitmq:<version>-alpine
Alpine Linux-based image (lighter footprint).Use when minimizing image size—note that some plugins or Erlang packages may require extra setup.Versioning follows RabbitMQ releases, which are tightly coupled with Erlang versions. Always validate compatibility when pinning tags.