Browse Source

Add notes about the "Erlang Cookie" for RabbitMQ

Tianon Gravi 10 years ago
parent
commit
3cc3fbe809
1 changed files with 22 additions and 0 deletions
  1. 22 0
      rabbitmq/content.md

+ 22 - 0
rabbitmq/content.md

@@ -27,6 +27,28 @@ If you give that a minute, then do `docker logs some-rabbit`, you'll see in the
 
 Note the `database dir` there, especially that it has my "Node Name" appended to the end for the file storage. This image makes all of `/var/lib/rabbitmq` a volume by default.
 
+### Erlang Cookie
+
+See the [RabbitMQ "Clustering Guide"](https://www.rabbitmq.com/clustering.html#erlang-cookie) for more information about cookies and why they're necessary.
+
+For setting a consistent cookie (especially useful for clustering but also for remote/cross-container administration via `rabbitmqctl`), use `RABBITMQ_ERLANG_COOKIE`:
+
+	docker run -d --hostname my-rabbit --name some-rabbit -e RABBITMQ_ERLANG_COOKIE='secret cookie here' rabbitmq:3
+
+This can then be used from a separate instance to connect:
+
+	$ docker run -it --rm --link some-rabbit:my-rabbit -e RABBITMQ_ERLANG_COOKIE='secret cookie here' rabbitmq:3 bash
+	root@f2a2d3d27c75:/# rabbitmqctl -n rabbit@my-rabbit list_users
+	Listing users ...
+	guest   [administrator]
+
+Alternatively, one can also use `RABBITMQ_NODENAME` to make repeated `rabbitmqctl` invocations simpler:
+
+	$ docker run -it --rm --link some-rabbit:my-rabbit -e RABBITMQ_ERLANG_COOKIE='secret cookie here' -e RABBITMQ_NODENAME=rabbit@my-rabbit rabbitmq:3 bash
+	root@f2a2d3d27c75:/# rabbitmqctl list_users
+	Listing users ...
+	guest   [administrator]
+
 ### 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`: