All the containers within an environment can reach each other… your ElasticSearch containers just have no way to know what each other’s IPs are without linking or that introspective API that isn’t out yet.
In the latest release you can actually link a single ElasticSearch service (with e.g. scale=5) to itself by editing it after create. Let’s say you give it an “as name” of “cluster”, then from any of the containers you can lookup “cluster” in DNS. That will give you back 5 A records with the
10.42.x.x for the 5 containers in that service.
It’s possible ElasticSearch is smart enough to be able to lookup a hostname and use the 5 records that it gets back. That would be convenient :-). Otherwise you’d be back to creating a plugin, startup script, or config file to get them into ES, but at lest it’s possible to get the IPs today.