Docker使用elasticsearch运行ubuntu
我有一个Ubuntu的docker。 我安装elasticsearch服务它。
当我使用命令“curl -X GET'localhost:9200'”时,它返回版本,名称,所有权利。
这意味着弹性searchconfiguration正确,但是当我在我的浏览器上访问docker时,不起作用。
我已经在path中的elasticsearch.yml文件中configuration了networking:/etc/elasticsearch/elasticsearch.yml
我不知道原因。 当我启动泊坞窗我使用命令:
docker运行-it -p 9200:9200 ubuntu / elastic
额外的信息 :elasticsearch在ubuntu中也是一个docker。 我开始Ubuntu的,然后在Ubuntu的容器内,我开始elasticsearch服务。
您应该使用官方的ELS泊坞窗图像,并使用文档中的命令。
从ELS文档 :
Docker镜像可以通过以下命令获取:
docker pull docker.elastic.co/elasticsearch/elasticsearch:5.4.1
[…]
从命令行编辑器运行Elasticsearch
发展模式
Elasticsearch可以通过以下命令快速启动以进行开发或testing:
docker run -p 9200:9200 -e "http.host=0.0.0.0" -e "transport.host=127.0.0.1"
docker.elastic.co/elasticsearch/elasticsearch:5.4.1
默认情况下,elasticsearch正在监听127.0.0.1
因此它不能在容器外访问。 为了能够在容器外访问,您将需要使用以下命令启动它:
docker run -p 9200:9200 -e "http.host=0.0.0.0" -e "transport.host=127.0.0.1" docker.elastic.co/elasticsearch/elasticsearch:5.4.1
这将使所有IP地址0.0.0.0
弹性search可用,那么你将能够访问它。 细节可以在这里find。