安装过程中,遇到最大的问题就是在安装kibana的时候发现 一直连接不上 elasticsearch。最后解决的问题就是 我通过
ifconfig en0 | grep inet| awk '{print $2}'
在mac中找到本机的ip,然后去到kibana容器中 修改vi config/kibana.yml
中的elasticsearch.hosts 把它换成本机ip成功了。我用127.0.0.1或者使用docker inspect elasticsearch |grep IPAddress
查看docker内ElasticSearch的ip 进行替换都不行。并且在kibana容器中使用curl 'http://192.168.124.8:9200'
返回了elasticsearch的信息,说明肯定能连接到elasticsearch。安装
docker pull elasticsearch:7.7.0
1、安装elasticsearch并启动
sh
docker pull elasticsearch:7.7.0
docker run -d --name elasticsearch -p 9200:9200 -p 9300:9300 -e "discovery.type=single-node" elasticsearch:7.7.0
#-d:后台启动
#--name:容器名称
#-p:端口映射
#-e:设置环境变量
#discovery.type=single-node:单机运行
#elasticsearch:7.7.0:镜像名字
#如果启动不了,可以加大内存设置:-e ES_JAVA_OPTS="-Xms512m -Xmx512m"
#启动过程无发现问题
到这其实打开浏览器访问http://192.168.124.8:9200/
ip是我mac的本机ip,为什么不用localhost or 127.0.0.1
用这两个也能访问成功,但是后面启动kibana,用这两个怎么也访问不到,没查到原因。并且kibana容器启动的时候必须制定本机的ip它才能连接到 elasticsearch服务。
2、安装kibana并启动
sh
docker pull docker.elastic.co/kibana/kibana:7.7.0
#这里我设置 ELASTICSEARCH_URL 为本机ip好像没啥用,他依然 连接不到elasticsearch服务
docker run --name kibana -e ELASTICSEARCH_URL=http://192.168.124.8/ -p 5601:5601 -d docker.elastic.co/kibana/kibana:7.7.0
#查看容器的日志信息,你会发现一只报错 显示 Unable to revive connection: http://elasticsearch:9200/
docker logs kibana -f
处理报错信息。
进入到 kibana容器中docker exec -it kibana /bin/bash
修改配置信息vi config/kibana.yml
其中的elasticsearch.hosts
ip修改成本机ip即可,然后重启容器docker restart kibana
,继续看日志,最后成功连接到 elasticsearch了。