繁体   English   中英

无法从主机访问在docker容器中运行的kibana Web UI和Elasticsearch

[英]Unable to access kibana web UI and Elasticsearch running in docker container from host machine

我以ubuntu为基础从dockerfile构建了一个docker镜像。 我在其中手动安装elasticsearch kibana气流。 我的容器的IP是172.17.0.2 我可以从172.17.0.2:8080从主机访问Airflow的Web UI。 但是无法分别以172.17.0.2:5601和172.17.0.2:9200访问Kibana或elasticsearch。

以下是我的dockerfile中用于安装elasticsearch的摘录

RUN wget -qO - https://artifacts.elastic.co/GPG-KEY-elasticsearch | apt-key add -
RUN echo "deb https://artifacts.elastic.co/packages/6.x/apt stable main" | tee -a /etc/apt/sources.list.d/elastic-6.x.list
RUN apt-get update
RUN apt-get install elasticsearch

请指教,谢谢!

实际上,我不知道您如何访问172.17.0.2:8080 但是常见的方式应该是发布您的端口,请参阅this

对于您的情况,可能是这样的:

docker run -it -p 5601:5601 -p 8080:8080 -p 9200:9200 your_image

然后,使用your_host_ip:5601your_host_ip:8080等(不是容器ip)来访问容器服务。

如果您已成功安装kibana和码头工人码头工人的形象构建-ED容器内,那么你已经揭露kibana默认端口5601的端口,并从本地主机访问它之前elasticsearch默认端口9200。 您可以通过两种不同的方式来实现。 例如:在dockerfile EXPOSE 5601 9200 8080或运行容器时。 因此,如果您想访问位于Airflow容器中的Kibana UI或Elasticsearch,则可以删除现有容器并使用端口暴露重新运行它。 假设-

容器运行时,

docker run -it --name webui_kibana_elasticsearch -p 5601:5601 -p 9200:9200 -p 8080:8080 ec45652e2ca4 /bin/bash

dockerfile构建时,

EXPOSE 8080 5601 9200

另外,如果您想在单独的Docker容器中使用Kibana和Elasticsearch,那么此文章将为您提供肯定的帮助。

看这里

https://docs.swiftybeaver.com/article/33-install-elasticsearch-kibana-via-docker

https://gist.github.com/sany2k8/347690434b282369890057d094218c7f

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM