无法连接到docker中的elasticsearch容器

我试图使用NoNodeAvailableException[None of the configured nodes are available官方弹性search图像,我遵循这个指南,但是当我试图连接到NoNodeAvailableException[None of the configured nodes are available集群我有一个例外NoNodeAvailableException[None of the configured nodes are available

我的代码

 TransportClient client = new PreBuiltTransportClient(Settings.builder().put("cluster.name", "docker-cluster") .build()) .addTransportAddress(new InetSocketTransportAddress(InetAddress.getByName("127.0.0.1"), 9300)); 

要运行elasticsearch容器,我使用了这个命令

 docker run -p 9200:9200 -p 9300:9300 -e "http.host=0.0.0.0" -e "transport.host=127.0.0.1" docker.elastic.co/elasticsearch/elasticsearch:5.2.2 

当我在localhost:9200上打开浏览器时localhost:9200浏览器显示这个文本

 { "name" : "J5oojcO", "cluster_name" : "docker-cluster", "cluster_uuid" : "SfkgAJmaT_Sb3erfYUl7sQ", "version" : { "number" : "5.2.2", "build_hash" : "f9d9b74", "build_date" : "2017-02-24T17:26:45.835Z", "build_snapshot" : false, "lucene_version" : "6.4.1" }, "tagline" : "You Know, for Search" } 

docker日志

 [2017-03-28T23:57:47,804][INFO ][oenNode ] [] initializing ... [2017-03-28T23:57:48,214][INFO ][oeeNodeEnvironment ] [S5IAW08] using [1] data paths, mounts [[/ (overlay)]], net usable_space [54.8gb], net total_space [62.7gb], spins? [possibly], types [overlay] [2017-03-28T23:57:48,216][INFO ][oeeNodeEnvironment ] [S5IAW08] heap size [1.9gb], compressed ordinary object pointers [true] [2017-03-28T23:57:48,224][INFO ][oenNode ] node name [S5IAW08] derived from node ID [S5IAW08lQvupW8s_e8btAQ]; set [node.name] to override [2017-03-28T23:57:48,233][INFO ][oenNode ] version[5.2.2], pid[1], build[f9d9b74/2017-02-24T17:26:45.835Z], OS[Linux/4.9.12-moby/amd64], JVM[Oracle Corporation/OpenJDK 64-Bit Server VM/1.8.0_92-internal/25.92-b14] [2017-03-28T23:57:52,719][INFO ][oepPluginsService ] [S5IAW08] loaded module [aggs-matrix-stats] [2017-03-28T23:57:52,719][INFO ][oepPluginsService ] [S5IAW08] loaded module [ingest-common] [2017-03-28T23:57:52,720][INFO ][oepPluginsService ] [S5IAW08] loaded module [lang-expression] [2017-03-28T23:57:52,721][INFO ][oepPluginsService ] [S5IAW08] loaded module [lang-groovy] [2017-03-28T23:57:52,721][INFO ][oepPluginsService ] [S5IAW08] loaded module [lang-mustache] [2017-03-28T23:57:52,722][INFO ][oepPluginsService ] [S5IAW08] loaded module [lang-painless] [2017-03-28T23:57:52,722][INFO ][oepPluginsService ] [S5IAW08] loaded module [percolator] [2017-03-28T23:57:52,723][INFO ][oepPluginsService ] [S5IAW08] loaded module [reindex] [2017-03-28T23:57:52,723][INFO ][oepPluginsService ] [S5IAW08] loaded module [transport-netty3] [2017-03-28T23:57:52,724][INFO ][oepPluginsService ] [S5IAW08] loaded module [transport-netty4] [2017-03-28T23:57:52,727][INFO ][oepPluginsService ] [S5IAW08] loaded plugin [x-pack] [2017-03-28T23:57:54,117][WARN ][oedsgGroovyScriptEngineService] [groovy] scripts are deprecated, use [painless] scripts instead [2017-03-28T23:58:00,388][INFO ][oenNode ] initialized [2017-03-28T23:58:00,389][INFO ][oenNode ] [S5IAW08] starting ... [2017-03-28T23:58:00,920][WARN ][inuiMacAddressUtil ] Failed to find a usable hardware address from the network interfaces; using random bytes: 53:a4:67:2d:77:c8:57:b6 [2017-03-28T23:58:01,073][INFO ][oetTransportService ] [S5IAW08] publish_address {127.0.0.1:9300}, bound_addresses {127.0.0.1:9300} [2017-03-28T23:58:04,224][INFO ][oecsClusterService ] [S5IAW08] new_master {S5IAW08}{S5IAW08lQvupW8s_e8btAQ}{4xwcEYRxTmi7-bRwYXHbYA}{127.0.0.1}{127.0.0.1:9300}, reason: zen-disco-elected-as-master ([0] nodes joined) [2017-03-28T23:58:04,293][INFO ][oehHttpServer ] [S5IAW08] publish_address {172.17.0.2:9200}, bound_addresses {[::]:9200} [2017-03-28T23:58:04,295][INFO ][oenNode ] [S5IAW08] started [2017-03-28T23:58:04,444][INFO ][oegGatewayService ] [S5IAW08] recovered [0] indices into cluster_state [2017-03-28T23:58:05,622][INFO ][oelLicenseService ] [S5IAW08] license [c0268fbc-15ce-418c-aacc-5b9d7c3cbaf7] mode [trial] - valid [2017-03-28T23:58:10,747][INFO ][oecmMetaDataCreateIndexService] [S5IAW08] [.monitoring-data-2] creating index, cause [auto(bulk api)], templates [.monitoring-data-2], shards [1]/[1], mappings [node, _default_, logstash, cluster_info, kibana] [2017-03-28T23:58:11,017][INFO ][oecmMetaDataCreateIndexService] [S5IAW08] [.monitoring-es-2-2017.03.28] creating index, cause [auto(bulk api)], templates [.monitoring-es-2], shards [1]/[1], mappings [shards, _default_, node, index_stats, index_recovery, cluster_state, cluster_stats, indices_stats, node_stats] [2017-03-28T23:58:11,598][INFO ][oecmMetaDataMappingService] [S5IAW08] [.monitoring-es-2-2017.03.28/KmXIrx3-R-G_ngo8rfIcZA] update_mapping [cluster_stats] [2017-03-28T23:58:11,852][INFO ][oecmMetaDataMappingService] [S5IAW08] [.monitoring-es-2-2017.03.28/KmXIrx3-R-G_ngo8rfIcZA] update_mapping [node_stats] [2017-03-28T23:58:22,105][INFO ][oecmMetaDataMappingService] [S5IAW08] [.monitoring-es-2-2017.03.28/KmXIrx3-R-G_ngo8rfIcZA] update_mapping [cluster_stats] [2017-03-28T23:58:22,192][INFO ][oecmMetaDataMappingService] [S5IAW08] [.monitoring-es-2-2017.03.28/KmXIrx3-R-G_ngo8rfIcZA] update_mapping [indices_stats] [2017-03-28T23:58:22,264][INFO ][oecmMetaDataMappingService] [S5IAW08] [.monitoring-es-2-2017.03.28/KmXIrx3-R-G_ngo8rfIcZA] update_mapping [index_stats] [2017-03-28T23:58:44,237][INFO ][oemjJvmGcMonitorService] [S5IAW08] [gc][43] overhead, spent [668ms] collecting in the last [1.5s] [2017-03-28T23:59:14,284][INFO ][oemjJvmGcMonitorService] [S5IAW08] [gc][73] overhead, spent [306ms] collecting in the last [1s] [2017-03-29T00:00:03,456][INFO ][oecmMetaDataCreateIndexService] [S5IAW08] [.monitoring-es-2-2017.03.29] creating index, cause [auto(bulk api)], templates [.monitoring-es-2], shards [1]/[1], mappings [shards, _default_, node, index_stats, index_recovery, cluster_state, cluster_stats, indices_stats, node_stats] [2017-03-29T00:00:03,685][INFO ][oecmMetaDataMappingService] [S5IAW08] [.monitoring-es-2-2017.03.29/FulovogFThmVCpL0RS99Hg] update_mapping [cluster_stats] [2017-03-29T00:00:03,774][INFO ][oecmMetaDataMappingService] [S5IAW08] [.monitoring-es-2-2017.03.29/FulovogFThmVCpL0RS99Hg] update_mapping [node_stats] [2017-03-29T00:00:03,856][INFO ][oecmMetaDataMappingService] [S5IAW08] [.monitoring-es-2-2017.03.29/FulovogFThmVCpL0RS99Hg] update_mapping [indices_stats] [2017-03-29T00:00:03,909][INFO ][oecmMetaDataMappingService] [S5IAW08] [.monitoring-es-2-2017.03.29/FulovogFThmVCpL0RS99Hg] update_mapping [index_stats] 

健康链接

 1490745899 00:04:59 docker-cluster yellow 1 1 3 3 0 0 3 0 - 50.0% 

提前致谢。

UPDATE

官方指南说图像是用X-Pack构build的,所以我试图禁用xpack的安全性,而且我成功地使用127.0.0.1:9300连接到弹性的seacrh容器

谢谢。

我不知道为什么这些文档会指示这样做,但是当您将127.0.0.1作为传输主机传递时,绑定仅会发送到该地址,因此无法在容器外访问。

尝试将transport.host定义为0.0.0.0 ,因此它也绑定到容器IP。