- RabbitMQ master and slaves, with one vhost (
/
) - RabbitMQ metrics exporter
- Prometheus server
- Grafana
Since this image is prepared to run in Docker Swarm, the first step is to initialize the swarm:
$ docker swarm init
Then, add all the slaves into this Swarm using $ docker swarm join
command. The image is prepared to include all Swarm workers as Rabbit slaves, and all Swarm managers as Rabbit masters. It also supports zero slaves (just one Rabbit master node).
Once the swarm is ready, we should create the docker-cloud.yml with RabbitMQ services definition. You can take an example from this image's repo.
Finally, we start the docker swarm rabbit cluster:
$ docker stack deploy -c docker-cloud.yml rabbitcluster
Where rabbitcluster
is the name of the swarm service.