Node running in Docker returns internal IP

Hi there,

I have two clusters running in two Docker Swarm clusters, and I’m trying to get cross-cluster searching and replication working. Although there seems to be some issues with the nodes due to the fact that they are running in Docker.

I’ve configured the seeding nodes to point to remove cluster’s DNS records, but I kept getting error saying timing out, and the IP address in the error message is the internal IP Docker assigned to the container, instead of the host IP.

{
  "error" : {
    "root_cause" : [
      {
        "type" : "connect_transport_exception",
        "reason" : "[syd-opense-master3][10.0.3.41:9300] connect_exception"
      }
    ],
    "type" : "connect_transport_exception",
    "reason" : "[syd-opense-master3][10.0.3.41:9300] connect_exception",
    "caused_by" : {
      "type" : "connect_timeout_exception",
      "reason" : "connection timed out: 10.0.3.41/10.0.3.41:9300"
    }
  },
  "status" : 500
}

I’m wondering if anyone else has the same issue.

Thanks

@peggy16 Could you please provide the API and setup used to reproduce this error?

Hi @peggy16 !

I’m not quite sure if what I’m seeing is the same, but when I looked at the docker container setup for my own cluster, I noticed that for my individual nodes, docker hadn’t mapped an address for port 9300 to be forwarded to the container.

In Docker, those port exposure settings have to happen at creation time. You may want to bring up another container in its place that’s configured to expose port 9300 and see if that gets you any further.

Thanks for bringing your question here!