当前位置: 首页 > web >正文

docker安装es连接kibana并安装分词器

使用Docker部署Elasticsearch、Kibana并安装分词器有以下主要优点:

1. 快速部署与一致性

  • 一键式部署:通过Docker Compose可以快速搭建完整的ELK栈环境

  • 环境一致性:确保开发、测试和生产环境完全一致,避免"在我机器上能运行"的问题

  • 版本管理简单:可以精确控制Elasticsearch和Kibana的版本及其兼容性

2. 资源隔离与可扩展性

  • 容器隔离:每个服务运行在独立容器中,互不干扰

  • 资源限制:可为每个容器分配特定CPU/内存资源

  • 横向扩展:轻松扩展Elasticsearch节点数量

3. 分词器集成的优势

  • 多语言支持:安装适当的分词器(如ik中文分词器)可显著提升中文搜索质量

  • 定制化分析:可以根据业务需求定制分词规则

  • 搜索准确性:专业分词器能更好地理解文本语义,提高搜索相关性

4. 运维便利性

  • 日志集中管理:Kibana提供直观的日志和指标可视化

  • 配置持久化:通过volume保存配置和数据,容器重启不丢失

  • 快速恢复:出现问题时可以快速重建容器

5. 开发效率提升

  • 快速原型开发:开发者可以快速搭建本地测试环境

  • 易于调试:可以单独重启某个服务而不影响其他组件

  • 社区支持:Docker镜像通常有完善的文档和社区支持

这种部署方式特别适合需要快速搭建搜索服务并需要良好中文支持的应用场景。

1 Linux中的配置

1.1 docker安装Elasticsearch和Kibana

vim docker-compose.yml

services:

  elasticsearch:

    image: elasticsearch:6.5.4

    restart: always

    container_name: elasticsearch

    ports:

      - 9200:9200

    environment:

      - ES_JAVA_OPTS=-Xms512m -Xmx512m  # 关键修改

      - bootstrap.memory_lock=true

      - http.host=0.0.0.0

      - transport.host=0.0.0.0

    ulimits:

      memlock:

        soft: -1

        hard: -1

    volumes:

      - es_data:/usr/share/elasticsearch/data

  kibana:

    image: kibana:6.5.4

    restart: always

    container_name: kibana

    ports:

      - 5601:5601

    environment:

      - elasticsearch_url=http://elasticsearch:9200

    depends_on:

      - elasticsearch

volumes:

  es_data:

#启动容器

docker compose up -d

#查看容器

docker ps

1.2  安装分词器ik

# 下载插件包

可使用命令也可直接前往我的飞书下载,链接在下面

#上传插件包到es容器中

docker cp /root/elasticsearch-analysis-ik-6.5.4.zip d9:/tmp

#进入容器

docker exec -it d9 bash

#查看

ls -l /tmp

#

# 解压到plugins目录(目录名必须为ik)

unzip /tmp/elasticsearch-analysis-ik-6.5.4.zip -d plugins/ik

# 修改目录权限

chown -R elasticsearch:elasticsearch plugins/ik

#退出容器

exit

#重启容器

docker restart elasticsearch

# 验证分词器

curl -X GET "localhost:9200/_cat/plugins?v"

注意ik分词器和es,kibana的版本匹配问题,需要6.5.4版本的ik分词器插件包的可前往我的飞书自取

Docs

2 Kibana连接验证

curl -XGET 'http://localhost:9200'

curl http://10.1.1.142:9200/_cluster/health?pretty

#浏览器访问10.1.1.142:9200和http://10.1.1.142:5601/

注意缓存问题,有时候一直进不去网页需要清除访问记录

快捷键
Ctrl + Shift + Delete(Windows/Linux)
Command + Shift + Delete(Mac)
直接打开清除浏览数据的窗口。

还有可能是防火墙问题,如果是centos7,注意两个防火墙的配置,如果两个都下载了,都要关掉,如果是用docker配置东西,需要配置路由规则,直接关掉防火墙会导致docker启动某某服务失败。

http://www.xdnf.cn/news/8598.html

相关文章:

  • Windows开机时间过长的原因
  • 射频芯片学习
  • 技术文档的炼金术:从信息碎片到知识体系的系统性构建
  • 《进化陷阱》--AI 生成文章 《连载 1》
  • RxJS 高阶映射操作符详解:map、mergeMap 和 switchMap
  • 大学之大:柏林自由大学2025.5.23
  • feign调用指定服务ip端口
  • winfrom 的 monthCalendar 指定日期字体加粗
  • 辐射发射RE测试
  • 解决用input选择文件不能选择同一个文件
  • Java多线程面试题
  • 白盒测试概念
  • 云原生架构下的企业数字化转型:理念、挑战与最佳实践
  • Honeywell CV-DINA-DI1624-2A 数字输入模块
  • K8s集群Python项目上云部署
  • vue2 全局指令(输入框自定义限制)
  • [crxjs]自己创建一个浏览器插件
  • 嵌入式学习Day27
  • [特殊字符] 构建高内聚低耦合的接口架构:从数据校验到后置通知的分层实践
  • 2025年高防IP与游戏盾深度对比:如何选择最佳防护方案?
  • C语言中地址的加法和减法
  • iOS 上线前的性能与稳定性检查流程实录:开发者的“最后一公里”(含 KeyMob 应用经验)
  • 速卖通OpenAPI商品详情接口开发实战
  • 生产企业ERP系统,项目级ERP系统源码,实现业务流程的全面管理
  • 用DeepSeek提升前端开发效率
  • MCP 服务与 Agent 协同架构的实践解码:双轮驱动下的场景化价值创造
  • 【ICL】上下文学习
  • 数据合法性校验
  • 典型城市工况数据(Drive Cycle)用于车辆仿真
  • 与 JetBrains 官方沟通记录(PyCharm 相关问题反馈)