Docker安装ES :确保 Kibana 正确连接 Elasticsearch

在使用 Docker 部署 ELK(Elasticsearch、Logstash、Kibana)堆栈时,正确的服务配置和依赖管理至关重要。本文将分享如何优化 Docker Compose 配置,确保 Kibana 能稳定连接到 Elasticsearch,并提供故障排查建议

cd /opt/docker

vi docker-compose.yaml

#写入

bash 复制代码
services:
  elasticsearch:
    image: elasticsearch:6.8.23
    restart: unless-stopped
    container_name: elasticsearch
    ports:
      - 9200:9200
    environment:
      - ES_JAVA_OPTS=-Xms512m -Xmx1024m
      - discovery.type=single-node
      - network.host=0.0.0.0  # 明确绑定到所有接口
    ulimits:
      memlock:
        soft: -1
        hard: -1
    volumes:
      - esdata:/usr/share/elasticsearch/data

  kibana:
    image: kibana:6.8.23
    restart: unless-stopped
    container_name: kibana
    ports:
      - 5601:5601
    environment:
      - SERVER_NAME=kibana
      - ELASTICSEARCH_URL=http://elasticsearch:9200  # 关键修改:使用容器名
    depends_on:
      - elasticsearch

volumes:
  esdata:

启动docker

docker compose down

docker compose up -d

浏览器输入ip:5601出现页面则安装成功

通过优化网络绑定、连接配置和依赖管理,可以显著提升 ELK 堆栈的稳定性。关键步骤包括:

  1. 使用 network.host=0.0.0.0 确保 Elasticsearch 监听所有接口。
  2. 通过容器名解析服务地址,避免硬编码 IP。
  3. 添加健康检查,确保依赖服务就绪后再启动。
  4. 清理旧容器、验证连接并检查日志,快速定位问题。
相关推荐
TiDB 社区干货传送门42 分钟前
从40秒到11毫秒:TiDB环境下一次SQL深潜优化实战
数据库·sql·tidb
IP管家1 小时前
企业级IP代理解决方案:负载均衡与API接口集成实践
服务器·网络·数据库·网络协议·tcp/ip·容器·负载均衡
愚润求学1 小时前
【Linux】进程间通信(一):认识管道
linux·运维·服务器·开发语言·c++·笔记
小吕学编程1 小时前
Jackson使用详解
java·javascript·数据库·json
宋康1 小时前
Docker 常用命令
docker·容器·eureka
雪碧聊技术1 小时前
数据库的范式
数据库·范式
Arbori_262151 小时前
Oracle 高水位线(High Water Mark, HWM)
数据库·oracle
SHUIPING_YANG1 小时前
Nginx 返回 504 状态码表示 网关超时(Gateway Timeout)原因排查
运维·nginx·gateway
yuanpan1 小时前
MongoDB与PostgreSQL两个数据库的特点详细对比
数据库·mongodb·postgresql
vvilkim1 小时前
Redis 事务与管道:原理、区别与应用实践
数据库·redis·缓存