记录自己在docker 中 启动Kibana 时遇到no living connections ,unable revive connection :http://elasticsearch
记录自己在docker 中 启动Kibana 时遇到
no living connections ,unable revive connection :http://elasticsearch:9200这个问题。
首先你要确保自己的es已经启动了,并且在浏览器中能看到如下的内容
其中172.17.0.2是es启动的容器中的地址,(你也可以在es启动时设置成127.0.0.1或者localhost),可以使用docker logs 容器id
这里的窗口id 就是es镜像启动的窗口id
假设容器id是7c06f6ee27c3 ,那么docker inspect 7c06f6ee27c3 你就可以看到如下的内容:
为什么浏览器是172.17.0.2而这个是172.17.0.3呢.因为我启动的容器多了,所以你懂的,我也不理解原理,你知道这个容器ip地址就好了。原理什么的。大佬自己去看啊
那么为什么出现上图这个错误呢,网上有两种说法一个是es 和kibana 的版本是不同的,另一种就是不在同一网络段下。你可以能过docker inspect 容器id去查看自己的es和kibana 是否在同一网络段内,正常情况下,docker 启动容器时,会创建bridge这个网络内。你可以能过docker network ls 来查看自己的网络。
如下图所示:
好了回到刚才那个问题。如何 解决:
我在查阅了很多博客后.是这个样子的。我们要找到Kibana.yml这个配置文件。
在docker 中这个文件是在Kibana 启动好的容器 中。
假设我们的kibana版本是7.2.1 ,镜像id:96dd1575de0
步骤:docker run -it -d -p 5601:5601 96dd1575de0
这样我们docker ps -a 后,得到了容器id
那么我们再执行这个命令:docker exec -it 7c06f6ee27c3 /bin/bash
这样我们就进入了容器 中
kibana.yml 在config这个文件中,如果 一不小心,比如说一些骚操作使你跳出了刚进入窗口的那个目录。我们可以cd /usr/share/kibana这样就可以找到config 了进而找到kibana.yml
vi kibana.yml
初始文件如下
你可能会报的错no living connections ,unable revive connection :http://elasticsearch:9200
这个你将其改成这样子:
修改完之后记得重新启动一下这个Kibana容器,docker restart 容器id
不出什么意外的话,你会在容器日志中看到这样的一句话:容器日志查看:docker logs 容器id
好了,如果出了什么意外的话,再去网上多搜搜吧。这个就是记录我自己的问题,并不是通用的。奥利给。
哦,忘了。打开之后的kibana界面是这样子的
谢谢大家的阅读。