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. 清理旧容器、验证连接并检查日志,快速定位问题。
相关推荐
程序员清风3 小时前
Java 后端高并发设计:线程池、限流、熔断与降级
java·数据库·oracle
天衍四九-3 小时前
MySQL中如何定位慢查询?如果SQL语句执行很慢,如何分析和优化?
数据库·sql·mysql
尚久龙3 小时前
mysql-5.7.26-winx64的安装步骤
数据库·mysql
医疗信息化王工3 小时前
DataForge:基于 Python 的数据库批量导出 Excel 工具——从架构到部署的全流程实战
数据库·python·excel
实心儿儿3 小时前
MySQL 的安装
数据库·mysql·adb
考虑考虑4 小时前
docker compose环境变量替换
运维·后端·自动化运维
Java陈序员4 小时前
轻量运维面板!一款现代化的服务器控制面板工具!
运维·服务器·python·react.js·github
bosins5 小时前
WSL 迁移指南:如何将 Linux 环境完整复制到另一台电脑
linux·运维·服务器
IT利刃出鞘5 小时前
Docker Compose--安装WordPress--方法/示例
运维·docker·容器
程序员阿鹏5 小时前
为什么MySQL InnoDB选择B+树?
数据结构·数据库·b树·sql·mysql·算法·缓存