Add initial rabbitmq docs
This commit is contained in:
parent
afc493feb5
commit
81187b7b50
|
|
@ -0,0 +1 @@
|
|||
RabbitMQ is a highly reliable enterprise messaging system based on the emerging AMQP standard
|
||||
|
|
@ -0,0 +1,61 @@
|
|||
# What is RabbitMQ?
|
||||
|
||||
RabbitMQ is open source message broker software (sometimes called
|
||||
message-oriented middleware) that implements the Advanced Message Queuing
|
||||
Protocol (AMQP). The RabbitMQ server is written in the Erlang programming
|
||||
language and is built on the Open Telecom Platform framework for clustering and
|
||||
failover. Client libraries to interface with the broker are available for all
|
||||
major programming languages.
|
||||
|
||||
> [wikipedia.org/wiki/RabbitMQ](https://en.wikipedia.org/wiki/RabbitMQ)
|
||||
|
||||
%%LOGO%%
|
||||
|
||||
# How to use this image
|
||||
|
||||
## Running the daemon
|
||||
|
||||
One of the important things to note about RabbitMQ is that it stores data based
|
||||
on what it calls the "Node Name", which defaults to the hostname. What this
|
||||
means for usage in Docker is that we should either specify `-h`/`--hostname` or
|
||||
`-e RABBITMQ_NODENAME=...` explicitly for each daemon so that we don't get a
|
||||
random hostname and can keep track of our data:
|
||||
|
||||
docker run -d -e RABBITMQ_NODENAME=my-rabbit --name some-rabbit rabbitmq:3
|
||||
|
||||
If you give that a minute, then do `docker logs some-rabbit`, you'll see in the
|
||||
output a block similar to:
|
||||
|
||||
=INFO REPORT==== 31-Dec-2014::23:21:09 ===
|
||||
node : my-rabbit@988c28b0eb2e
|
||||
home dir : /var/lib/rabbitmq
|
||||
config file(s) : /etc/rabbitmq/rabbitmq.config (not found)
|
||||
cookie hash : IFQiLgiJ4goGJrdsLJvN7A==
|
||||
log : undefined
|
||||
sasl log : undefined
|
||||
database dir : /var/lib/rabbitmq/mnesia/my-rabbit
|
||||
|
||||
Note the `database dir` there, especially that it has my `RABBITMQ_NODENAME`
|
||||
appended to the end for the file storage. This image makes all of
|
||||
`/var/lib/rabbitmq` a volume by default.
|
||||
|
||||
### Management Plugin
|
||||
|
||||
There is a second set of tags provided with the [management
|
||||
plugin](https://www.rabbitmq.com/management.html) installed and enabled by
|
||||
default, which is available on the standard management port of 15672, with the
|
||||
default username and password of `guest` / `guest`:
|
||||
|
||||
docker run -d -e RABBITMQ_NODENAME=my-rabbit --name some-rabbit rabbitmq:3-management
|
||||
|
||||
You can access it by visiting `http://container-ip:15672` in a browser or, if
|
||||
you need access outside the host, on port 8080:
|
||||
|
||||
docker run -d -e RABBITMQ_NODENAME=my-rabbit --name some-rabbit -p 8080:15672 rabbitmq:3-management
|
||||
|
||||
You can then go to `http://localhost:8080` or `http://host-ip:8080` in a
|
||||
browser.
|
||||
|
||||
## Connecting to the daemon
|
||||
|
||||
docker run --name some-app --link some-rabbit:rabbit -d application-that-uses-rabbitmq
|
||||
|
|
@ -0,0 +1,2 @@
|
|||
View [license information](https://www.rabbitmq.com/mpl.html) for the software
|
||||
contained in this image.
|
||||
Binary file not shown.
|
After Width: | Height: | Size: 8.2 KiB |
Loading…
Reference in New Issue