This looks totally broken.
The Metadata API is good, however, containers running busybox with WGET cannot call the API.
So in order to make a Consul container able to advertise itself using either the Host IP or the Container primary IP,
I would have to
- create my own docker images containing a custom installation of Consul
- and make that image CURL for the metadata and set variables from that.
Or…
- Run the Consul images with Host network
- Figure out a way to get what IP to bind to for each machine as Consul exits complaining there are multiple IP addresses. (which brings us back to the same issue as above, the busybox containers can’t talk to metadata)
Is that correct?
It looks like this is the way to go, Rancher Cassandra does this
https://hub.docker.com/r/objectpartners/rancher-cassandra/~/dockerfile/
Thats a lot of work just to adapt the images to Rancher.
Rancher is a tool that should make it easier to use containers, not force you to re-create existing containers…
[Edit] it looks like this post fixes the WGET problem