I'm trying to configure an ELK cluster using 2 docker containers.

I'm using the following image:

* es241\_l240\_k461: Elasticsearch 2.4.1, Logstash 2.4.0, and Kibana 4.6.1. (reference: <https://hub.docker.com/r/sebp/elk/> )

I have created 2 docker containers for that image with `docker-compose`; each works perfectly in standalone mode.

I want to link the 2 ELK nodes between each other in way to create the cluster, but I haven't found a proper solution.
The Elasticsearch node in *container1* doesn't communicate with the Elasticsearch node in *container2*.

These are the two `docker-compose.yml`:

**CONTAINER1:**

```
version: '2'
services:
  elasticsearch01:
    image: sebp/elk:es241_l240_k461
    ports:
      - "5601:5601"
      - "9200:9200"
      - "9300:9300"
      - "5044:5044"
    volumes:
      - /opt/ELK1/logstash/conf.d:/etc/logstash/conf.d
    privileged: true

```

**CONTAINER2:**

```
version: '2'
services:
  elasticsearch02:
    image: sebp/elk:es241_l240_k461
    ports:
      - "5602:5601"
      - "9201:9200"
      - "9301:9300"
      - "5045:5044"
    volumes:
      - /opt/ELK2/logstash/conf.d:/etc/logstash/conf.d
    privileged: true

```

I'have configured the `elasticsearch.yml` inside the docker containers in this way:

**NODE IN CONTAINER1:**

```
cluster.name: elasticsearchcluster
node.name: node1
network.host: 0.0.0.0
network.bind_host: 0.0.0.0
discovery.zen.ping.unicast.hosts: ["127.0.0.1", "172.21.0.2"]
discovery.zen.minimum_master_nodes: 1

```

**NODE IN CONTAINER2:**

```
cluster.name: elasticsearchcluster
node.name: node2
network.host: 0.0.0.0
network.bind_host: 0.0.0.0
discovery.zen.ping.unicast.hosts: ["127.0.0.1", "172.22.0.2"]
discovery.zen.minimum_master_nodes: 1

```

The key is the **`discovery.zen.ping.unicast.hosts`** parameter: I don't have the real IP address, because it's a docker container.

I tried `docker inspect elasticsearch01`, I have the following `"IPAddress"` property:

```
    "NetworkSettings": {
        ...
        "Networks": {
            "ELK1_default": {
                ...
                "Gateway": "172.22.0.1",
                "IPAddress": "172.22.0.2",
                ...
            }
        }
    }

```

But it doesn't work if I set that IP address.

How to configure the cluster properly?

EDIT

Trying the host ip-address and the port, the node 1 starts, the node 2 fails with no errors.

```
discovery.zen.ping.unicast.hosts: ["127.0.0.1", "192.168.0.1:9300"] -> OK
discovery.zen.ping.unicast.hosts: ["127.0.0.1", "192.168.0.2:9300"] -> FAILS with no errors

```