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. 清理旧容器、验证连接并检查日志,快速定位问题。
相关推荐
日取其半万世不竭17 分钟前
LVM 逻辑卷管理:不停机扩容磁盘的正确方式
运维·服务器
优化Henry28 分钟前
TDD-LTE站点Rilink=3链路故障处理案例---BBU侧C口“有发光、无收光”的排查与恢复
运维·网络·信息与通信·tdd
浪客灿心29 分钟前
Linux网络传输层协议
linux·运维·网络
belldeep43 分钟前
本草纲目:如何应用 PostgreSQL 实现【中医药】主题数据库 ?
数据库·postgresql·本草纲目
Bert.Cai1 小时前
MySQL CURTIME()函数详解
数据库·mysql
Bert.Cai1 小时前
MySQL CURDATE()函数详解
数据库·mysql
V搜xhliang02461 小时前
OpenClaw科研全场景用法:从文献到实验室的完整自动化方案
运维·开发语言·人工智能·python·算法·microsoft·自动化
NGSI vimp1 小时前
MySQL|MySQL 中 `DATE_FORMAT()` 函数的使用
数据库·mysql
HAWK eoni1 小时前
Mysql 驱动程序
数据库·mysql
遇见火星1 小时前
Nginx限流配置:防止接口被刷,服务器稳如泰山
运维·服务器·nginx