Reputation: 117
I'm setting up an Elasticsearch instance in Docker on Windows 10 Home (therefore I'm using Docker Toolbox as I don't have Hyper-V). At this point all I'm looking for is a running Elasticsearch instance which is curl
-able.
I've been following the setup provided on the Elasticsearch website and in theory I've done the only step it seems to need to create a development container, i.e. "run this command to start a development instance".
The last few output lines on the logs are as follows:
{"type": "server", "timestamp": "2019-06-23T13:30:22,989+0000", "level": "INFO", "component": "o.e.x.i.a.TransportPutLifecycleAction", "cluster.name": "docker-cluster", "node.name": "351001acfb2c", "cluster.uuid": "5KONF0ypTuWqfDJav1ludw", "node.id": "139z-22WSS6BpsLt49dnYg", "message": "adding index lifecycle policy [watch-history-ilm-policy]" }
{"type": "server", "timestamp": "2019-06-23T13:30:24,512+0000", "level": "INFO", "component": "o.e.l.LicenseService", "cluster.name": "docker-cluster", "node.name": "351001acfb2c", "cluster.uuid": "5KONF0ypTuWqfDJav1ludw", "node.id": "139z-22WSS6BpsLt49dnYg", "message": "license [ec9b4a7e-7c13-4249-9378-b1dd17de1746] mode [basic] - valid" }
It intermittently writes a further line, but it never gets any further than this:
{"type": "server", "timestamp": "2019-06-23T13:52:58,676+0000", "level": "INFO", "component": "o.e.m.j.JvmGcMonitorService", "cluster.name": "docker-cluster", "node.name": "5bd339b9053c", "cluster.uuid": "9KC7mhtMSk-AhmmbSJ7pdA", "node.id": "K-A62Z4GTFylOFqL_B-bsg", "message": "[gc][7] overhead, spent [269ms] collecting in the last [1s]" }
The command that I'm running is:
docker run -p 9200:9200 -p 9300:9300 -e "discovery.type=single-node" docker.elastic.co/elasticsearch/elasticsearch:7.1.1
The curl
s that I'm using to try and reach the service are:
curl http://localhost:9200/_status
and
curl http://127.0.0.1:9200/_status
It could be that I'm going about this all wrong and that this is totally expected behaviour, but this can't be curl
ed and that looks to be the means by which you examine whether it's worked or not. Any advice greatly appreciated!
Upvotes: 0
Views: 1923
Reputation: 117
As it turns out this is expected behaviour arising from Docker Toolbox being a workaround of sorts for when Hyper-V is not available.
As noted in this Q&A, the actual IP address used with Docker Toolbox is in fact 192.168.99.100 rather than 127.0.0.1 or 0.0.0.0.
So, for accessing anything to do with Elasticsearch (assuming your Docker container has gotten to the point mentioned above regarding licenses), your root address should be either:
http://192.168.99.100:9200
or
http://192.168.99.100:9300
Upvotes: 1