【发布时间】:2018-11-05 00:44:29
【问题描述】:
我在尝试使用 Docker 容器将 Kibana 连接到 ES 时遇到错误:
kibana-products-624 | {"type":"log","@timestamp":"2018-05-25T14:56:36Z","tags":["warning","elasticsearch","admin"],"pid":1, "message":"无法恢复连接:http://elasticsearch:9200/"} kibana-产品-624 | {"type":"log","@timestamp":"2018-05-25T14:56:36Z","tags":["warning","elasticsearch","admin"],"pid":1, "message":"没有生活联系"}
我在环境设置和 yml 的其他配置中尝试了多种变体,但仍然出现此错误。
我已使用 CURL 和浏览器验证 ElasticSearch 正在运行并在端口 9200 上可用。
这个配置有什么问题?
这里是 docker-compose.yml:
version: "3"
volumes:
elasticsearch-products-624-vol:
networks:
elasticsearch-net-624:
services:
elasticsearch-products-624-service:
image: docker.elastic.co/elasticsearch/elasticsearch:6.2.4
container_name: elasticsearch-products-624
restart: always
networks:
- elasticsearch-net-624
environment:
- cluster.name=docker-cluster
- bootstrap.memory_lock=true
- "ES_JAVA_OPTS=-Xms512m -Xmx512m"
- xpack.security.enabled=true
ulimits:
memlock:
soft: -1
hard: -1
ports:
- "9200:9200"
expose:
- "9200"
volumes:
- elasticsearch-products-624-vol:/usr/share/elasticsearch/data
kibana-products-624-service:
image: docker.elastic.co/kibana/kibana:6.2.4
container_name: kibana-products-624
hostname: kibana
restart: always
networks:
- elasticsearch-net-624
environment:
- SERVER_NAME=kibana.localhost
- ELASTICSEARCH_URL=http://elasticsearch:9200
- ELASTICSEARCH_USERNAME=elastic
- ELASTICSEARCH_HOST=elasticsearch
- ELASTICSEARCH_PORT=9200
- ELASTIC_PWD=changeme
- KIBANA_PWD=changeme
ports:
- "5601:5601"
expose:
- "5601"
links:
- elasticsearch-products-624-service
depends_on:
- elasticsearch-products-624-service
【问题讨论】:
-
从 Kibana 容器执行 'curl elasticsearch:9200/_cat/health...' 会发生什么?主要是为了验证网络和端口可访问性。
-
1527271075 17:57:55 docker-cluster green 1 1 1 1 0 0 0 0 - 100.0% 那是来自 localhost:9200/...
-
$ docker container exec -i kibana-products-624 curl elasticsearch:9200/_cat/health % Total % Received % Xferd Average Speed Time Time Time Time Current Dload Upload Total Spent Left Speed 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0curl: (6) 无法解析主机:elasticsearch;名称或服务未知
-
$ docker container exec -i kibana-products-624 curl localhost:9200/_cat/health % Total % Received % Xferd Average Speed Time Time Time Time Current Dload Upload Total Spent Left Speed 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0curl: (7) 无法连接 ::1: 无法分配请求的地址
标签: docker elasticsearch kibana