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. 清理旧容器、验证连接并检查日志,快速定位问题。
相关推荐
恋红尘2 分钟前
K8S Pod 基础解析-分篇-叩丁狼
云原生·容器·kubernetes·pod
Liu628888 分钟前
Web开发与API
jvm·数据库·python
m0_7434703711 分钟前
Python字典与集合:高效数据管理的艺术
jvm·数据库·python
2501_9454235412 分钟前
使用Scrapy框架构建分布式爬虫
jvm·数据库·python
yhole14 分钟前
MySQL无法连接到本地localhost的解决办法2024.11.8
数据库·mysql·adb
2401_8512729916 分钟前
使用Python进行量化交易入门
jvm·数据库·python
jinanmichael19 分钟前
mysql用户名怎么看
数据库·mysql
李少兄26 分钟前
企业资源计划(ERP)系统全景指南
java·前端·数据库·erp
bwz999@88.com26 分钟前
联想SR5507X04安装ubuntu-24.04.4 server,采用 Linux 原生mdadm(mdraid)软 RAID+LVM分区
运维·服务器