Docker从主机访问elasticsearch端点

时间:2016-04-22 20:39:56

标签: elasticsearch docker

我正在使用以下命令运行docker镜像:

 docker run -P elasticsearch:2.2

我能够从主机访问在端口9200上运行的http端点,但是我不清楚如何设置publish_address以使其不会不断变化。我试图修改elasticsearch.yml并将network.publish属性设置为分配给docker0和eth0以及lo的ip地址,即使它在启动时确认输出中的绑定,但是卷曲到该地址会让我拒绝连接

1 个答案:

答案 0 :(得分:1)

以下elasticsearch:2.2暴露一些端口9200和9300.使用Elasticsearch时众所周知的端口。 Docker建议为您的应用程序使用通用的传统端口,这就是elasticsearch:2.2所做的。不要修改内部elasticsearch.yml;让它原样:)

唯一要做的就是使用-p(小写)选项而不是-P(大写)将图像内部端口映射到主机的端口

像这样使用:

docker run -p 9200:9200/tcp -p 9300:9300/tcp elasticsearch:2.2

这样做告诉docker不要使用随机端口,而是使用-p选项来使用映射到内部端口的端口。