Kibana 无法恢复与 ElasticSearch 的连接
Kibana Unable to revive connection to ElasticSearch
我是 ElasticSearch 的新手,我按照这里的说明操作:https://www.elastic.co/guide/en/elasticsearch/reference/current/docker.html
每当我 运行 'docker-compose up',Kibana 总是会说“无法恢复连接”,但是如果我 运行 curl http://localhost:9200,我会得到一个回应:
{
"name" : "ec88fa675367",
"cluster_name" : "docker-cluster",
"cluster_uuid" : "UkLkAHO8S4yzAKFaf0KsYA",
"version" : {
"number" : "7.5.0",
"build_flavor" : "default",
"build_type" : "docker",
"build_hash" : "e9ccaed468e2fac2275a3761849cbee64b39519f",
"build_date" : "2019-11-26T01:06:52.518245Z",
"build_snapshot" : false,
"lucene_version" : "8.3.0",
"minimum_wire_compatibility_version" : "6.8.0",
"minimum_index_compatibility_version" : "6.0.0-beta1"
},
"tagline" : "You Know, for Search"
}
下面是我的docker-compose.yml,请帮忙,谢谢!
version: '3'
networks:
elastic:
services:
elasticsearch:
image: docker.elastic.co/elasticsearch/elasticsearch:7.5.0
container_name: elasticsearch
networks:
- elastic
environment:
- discovery.type=single-node
ports:
- 9200:9200
kibana:
image: docker.elastic.co/kibana/kibana:7.5.0
container_name: kibana
networks:
- elastic
environment:
SERVER_NAME: kibana
ELASTICSEARCH_HOSTS: http://localhost:9200
links:
- elasticsearch
depends_on:
- elasticsearch
它不起作用的原因是因为您将 ELASICSEARCH_HOSTS
设置为 Kibana 主机(因为 localhost 代表 kibana 容器)。您需要做的是使用 elasticsearch 主机名 ELASTICSEARCH_HOSTS: http://elasticsearch:9200
.
您还需要映射您的 Kibana 端口,否则您将无法从本地计算机访问它(类似于您为 elasticsearch 所做的)。
下面的例子应该有效:
version: '3'
networks:
elastic:
services:
elasticsearch:
image: docker.elastic.co/elasticsearch/elasticsearch:7.5.0
container_name: elasticsearch
networks:
- elastic
environment:
- discovery.type=single-node
ports:
- 9200:9200
kibana:
image: docker.elastic.co/kibana/kibana:7.5.0
container_name: kibana
networks:
- elastic
environment:
SERVER_NAME: kibana
ELASTICSEARCH_HOSTS: http://elasticsearch:9200
links:
- elasticsearch
depends_on:
- elasticsearch
ports:
- 5601:5601
我是 ElasticSearch 的新手,我按照这里的说明操作:https://www.elastic.co/guide/en/elasticsearch/reference/current/docker.html
每当我 运行 'docker-compose up',Kibana 总是会说“无法恢复连接”,但是如果我 运行 curl http://localhost:9200,我会得到一个回应:
{
"name" : "ec88fa675367",
"cluster_name" : "docker-cluster",
"cluster_uuid" : "UkLkAHO8S4yzAKFaf0KsYA",
"version" : {
"number" : "7.5.0",
"build_flavor" : "default",
"build_type" : "docker",
"build_hash" : "e9ccaed468e2fac2275a3761849cbee64b39519f",
"build_date" : "2019-11-26T01:06:52.518245Z",
"build_snapshot" : false,
"lucene_version" : "8.3.0",
"minimum_wire_compatibility_version" : "6.8.0",
"minimum_index_compatibility_version" : "6.0.0-beta1"
},
"tagline" : "You Know, for Search"
}
下面是我的docker-compose.yml,请帮忙,谢谢!
version: '3'
networks:
elastic:
services:
elasticsearch:
image: docker.elastic.co/elasticsearch/elasticsearch:7.5.0
container_name: elasticsearch
networks:
- elastic
environment:
- discovery.type=single-node
ports:
- 9200:9200
kibana:
image: docker.elastic.co/kibana/kibana:7.5.0
container_name: kibana
networks:
- elastic
environment:
SERVER_NAME: kibana
ELASTICSEARCH_HOSTS: http://localhost:9200
links:
- elasticsearch
depends_on:
- elasticsearch
它不起作用的原因是因为您将 ELASICSEARCH_HOSTS
设置为 Kibana 主机(因为 localhost 代表 kibana 容器)。您需要做的是使用 elasticsearch 主机名 ELASTICSEARCH_HOSTS: http://elasticsearch:9200
.
您还需要映射您的 Kibana 端口,否则您将无法从本地计算机访问它(类似于您为 elasticsearch 所做的)。
下面的例子应该有效:
version: '3'
networks:
elastic:
services:
elasticsearch:
image: docker.elastic.co/elasticsearch/elasticsearch:7.5.0
container_name: elasticsearch
networks:
- elastic
environment:
- discovery.type=single-node
ports:
- 9200:9200
kibana:
image: docker.elastic.co/kibana/kibana:7.5.0
container_name: kibana
networks:
- elastic
environment:
SERVER_NAME: kibana
ELASTICSEARCH_HOSTS: http://elasticsearch:9200
links:
- elasticsearch
depends_on:
- elasticsearch
ports:
- 5601:5601