https://github.com/serkodev/rabbitmq-cluster-docker
1-click setup RabbitMQ Cluster with Docker Compose
https://github.com/serkodev/rabbitmq-cluster-docker
cluster compose config docker docker-compose easy-to-use haproxy rabbitmq rabbitmq-cluster
Last synced: 7 months ago
JSON representation
1-click setup RabbitMQ Cluster with Docker Compose
- Host: GitHub
- URL: https://github.com/serkodev/rabbitmq-cluster-docker
- Owner: serkodev
- License: mit
- Created: 2022-05-16T12:24:47.000Z (about 3 years ago)
- Default Branch: master
- Last Pushed: 2024-06-17T13:34:55.000Z (about 1 year ago)
- Last Synced: 2024-12-08T09:23:19.784Z (7 months ago)
- Topics: cluster, compose, config, docker, docker-compose, easy-to-use, haproxy, rabbitmq, rabbitmq-cluster
- Language: Shell
- Homepage:
- Size: 6.84 KB
- Stars: 104
- Watchers: 1
- Forks: 55
- Open Issues: 2
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# RabbitMQ Cluster Docker
Setup a RabbitMQ Cluster environment on your device using the pure [RabbitMQ](https://hub.docker.com/_/rabbitmq/) official docker image with Docker Compose.
## Features
- Super easy setup, config and expand
- Use a purely official RabbitMQ image
- Support latest version, optimized for Erlang cookie config
- Build-in HAProxy load balancing## Quick start
```
docker compose up
```Open http://localhost:15672 to login RabbitMQ dashboard.
> Username: `guest`
> Password: `guest`## Configuration
### `docker-compose.yml`
Docker [compose](https://docs.docker.com/compose/compose-file/) config file, including 3 RabbitMQ service cluster and a HAProxy.
| Service | Description |
| ----------- | ------------------------- |
| `rabbitmq1` | RabbitMQ (cluster) |
| `rabbitmq2` | RabbitMQ (cluster member) |
| `rabbitmq3` | RabbitMQ (cluster member) |
| `haproxy` | Load Balancer |#### Default expose ports
| Host | Description |
| ----------------- | --------------------------------------------------- |
| `localhost:5672` | AMQP 0-9-1 and AMQP 1.0 clients |
| `localhost:15672` | HTTP API clients, management UI and `rabbitmqadmin` |### `.env`
| Name | Default |
| ------------------------ | ------- |
| `RABBITMQ_DEFAULT_USER` | guest |
| `RABBITMQ_DEFAULT_PASS` | guest |
| `RABBITMQ_DEFAULT_VHOST` | / |### `.erlang.cookie`
Put your custom [Erlang Cookie](https://www.rabbitmq.com/clustering.html#erlang-cookie) inside this file (default: `12345`) for the nodes in cluster communicate with each other.
### `haproxy.cfg`
Load balancer [HA Proxy](http://www.haproxy.org/) config. Including the load balancing config and the hostnames of the nodes in cluster.
## References
- [docker-rabbitmq-cluster](https://github.com/pardahlman/docker-rabbitmq-cluster)
- [rabbitmq-cluster](https://github.com/JohnnyVicious/rabbitmq-cluster)## LICENSE
MIT