利用docker compose 搭建 elasticsearch 和kibana

news2024/11/23 9:32:15

本文已参与「新人创作礼」活动,一起开启掘金创作之路。

本文介绍了从docker compose 搭建 elasticsearch 并安装IK 分词插件,然后再用kibana测试的详细步骤。

利用docker compose 搭建 elasticsearch 和kibana

1. 下载软件

1.1 下载镜像

docker pull  elasticsearch:7.17.1
docker pull  kibana:7.17.1

1.2 下载IK分词插件

从官方网站

Releases · medcl/elasticsearch-analysis-ik · GitHub

下载对应版本的分词插件,因为我们的 elasticsearch 为 7.17.1 所以下载

elasticsearch-analysis-ik-7.17.1.zip

1.3 下载docker compose

查看下载地址

# 下载2.5.0 版本到 /usr/local/bin/docker-compose

wget  -O /usr/local/bin/docker-compose https://github.com/docker/compose/releases/download/v2.5.0/docker-compose-linux-x86_64 
# 添加执行权限
chmod u+x /usr/local/bin/docker-compose

# 查看版本
docker-compose -v
# Docker Compose version v2.5.0

2. 安装配置

2.1 准备目录和配置文件

cd /home/bwie/soft
# 创建Elasticsearch配置文件夹
mkdir -p elasticsearch/config
# 创建Elasticsearch数据文件夹
mkdir -p elasticsearch/data
# 创建Elasticsearch插件文件夹(如:ik)
mkdir -p elasticsearch/plugins

mkdir -p elasticsearch/kibana

# 给数据目录添加权限否则在es启动后报错
chmod 777 elasticsearch/data

echo "http.host: 0.0.0.0">>elasticsearch/config/elasticsearch.yml

实际的elasticsearch.yml 文件内容

network.host: 0.0.0.0

kibana.yml 文件内容如下:

elasticsearch.hosts: http://elasticsearch:9200
server.host: "0.0.0.0"
server.name: kibana
xpack.monitoring.ui.container.elasticsearch.enabled: true
i18n.locale: zh-CN

2.2 安装分词插件

把 elasticsearch-analysis-ik-7.17.1.zip 解压后放到一个ik 文件夹中

,并拷贝到 /home/bwie/soft/elasticsearch/plugins 目录中

见下图

image.png

2.3 编写docker-compose 配置文件

在 elasticsearch 文件夹中创建 docker-compose.yml

# 启动 docker-compose up -d && docker-compose logs -f
# 关闭 docker-compose down &&  docker-compose rm -vf
version: '3.2'
services:
  elasticsearch:
    image: elasticsearch:7.17.1
    ports:
      - "9200:9200"
      - "9300:9300"
    container_name: "elasticsearch"
    environment:
      # 单节点     
      - discovery.type=single-node
      - "- ES_JAVA_OPTS=-Xms2G -Xmx4G"
    volumes:
      - /home/bwie/soft/elasticsearch/config/elasticsearch.yml:/usr/share/elasticsearch/config/elasticsearch.yml
      - /home/bwie/soft/elasticsearch/data:/usr/share/elasticsearch/data
      - /home/bwie/soft/elasticsearch/plugins:/usr/share/elasticsearch/plugins
   kibana:
    image: kibana:7.17.1
    ports:
      - "5601:5601"
    container_name: "kibana"
    #restart: always
    depends_on:
      - elasticsearch
    volumes:
      - /home/bwie/soft/elasticsearch/kibana/kibana.yml:/usr/share/kibana/config/kibana.yml

2.4 启动并查看状态

docker-compose up -d && docker-compose logs -f

查看状态

docker-compose ps

NAME                COMMAND                  SERVICE             STATUS              PORTS
elasticsearch       "/bin/tini -- /usr/l??   elasticsearch       running             0.0.0.0:9200->9200/tcp, 0.0.0.0:9300->9300/tcp, :::9200->9200/tcp, :::9300->9300/tcp
kibana              "/bin/tini -- /usr/l??   kibana              running             0.0.0.0:5601->5601/tcp, :::5601->5601/tcp

3. 测试分词器

访问地址 http://你的ip:9200/ 这是es的基本信息

看到

{
  "name" : "es01",
  "cluster_name" : "elasticsearch",
  "cluster_uuid" : "e3bQRkN7SFm68k4zB1ftNA",
  "version" : {
    "number" : "7.17.1",
    "build_flavor" : "default",
    "build_type" : "docker",
    "build_hash" : "e5acb99f822233d62d6444ce45a4543dc1c8059a",
    "build_date" : "2022-02-23T22:20:54.153567231Z",
    "build_snapshot" : false,
    "lucene_version" : "8.11.1",
    "minimum_wire_compatibility_version" : "6.8.0",
    "minimum_index_compatibility_version" : "6.0.0-beta1"
  },
  "tagline" : "You Know, for Search"
}

访问地址 http://你的ip:5601/ 这是kibana 控制台

image.png

image.png

测试IK分词器

POST _analyze
{
  "analyzer":"ik_smart",
  "text":"以下判断正确的是2"
}

返回

#! Elasticsearch built-in security features are not enabled. Without authentication, your cluster could be accessible to anyone. See https://www.elastic.co/guide/en/elasticsearch/reference/7.17/security-minimal-setup.html to enable security.
{
  "tokens" : [
    {
      "token" : "以下",
      "start_offset" : 0,
      "end_offset" : 2,
      "type" : "CN_WORD",
      "position" : 0
    },
    {
      "token" : "判断",
      "start_offset" : 2,
      "end_offset" : 4,
      "type" : "CN_WORD",
      "position" : 1
    },
    {
      "token" : "正确",
      "start_offset" : 4,
      "end_offset" : 6,
      "type" : "CN_WORD",
      "position" : 2
    },
    {
      "token" : "的",
      "start_offset" : 6,
      "end_offset" : 7,
      "type" : "CN_CHAR",
      "position" : 3
    },
    {
      "token" : "是",
      "start_offset" : 7,
      "end_offset" : 8,
      "type" : "CN_CHAR",
      "position" : 4
    },
    {
      "token" : "2",
      "start_offset" : 8,
      "end_offset" : 9,
      "type" : "ARABIC",
      "position" : 5
    }
  ]
}

image.png

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/610593.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

实验技术—测序数据不好,可能是建库出了问题?(上)

回顾 在建库之前,我们需要对先前提取的核酸进行质检。只有质检合格的样本才能继续建库、测序、分析。(质检的内容在上一章节也有描述)这里再回顾下质检的内容主要分以下几部分: 1. 凝胶电泳实验: DNA是否降解 ,是否有…

【Python 异步编程】零基础也能轻松掌握的学习路线与参考资料

Python 异步编程学习路线: 1.理解同步和异步编程模型的区别,了解使用异步编程的优缺点。 同步编程是指一个任务执行完毕后再执行下一个任务,而异步编程则是在任务执行的同时还可以继续执行其他任务。 异步编程优点: (1)性能优…

DC电源模块在工业自动化的应用

BOSHIDA DC电源模块在工业自动化的应用 随着自动化技术的不断发展,DC电源模块已成为工业控制系统中不可或缺的一个组成部分。在许多自动化系统中,如机器人、控制器、PLC等,都需要使用到直流电源模块来提供稳定可靠的电源,以确保系…

卷起来了,国产显卡再添新成员,主打性价比

前段时间 NVIDIA 带来了一贯甜品段位的 60 级显卡。 其拉胯的性能表现与定价策略,属实让咱觉得是小刀划屁股,开了眼。 放在以往 60 级哪次不是大幅提升,甚至做到越级打 80 级。 反观这代 RTX 4060 Ti 规格倒吸牙膏、性能个位数提升&#xf…

ESP-BOX在VSCODE上编译烧录

1.准备 安装好ESP-IDF和VSCODE上的扩展插件 参考安装步骤1 参考按照步骤2 2.编译和烧录 (1)显示所有例程 (2)在get-started处选择hello_world,然后创建项目目录 (3)选择芯片类型&#xff0c…

ai怎么写作?ai写作的三个步骤分享给你

随着人工智能技术的不断发展,越来越多的ai写作软件被应用于各种文本创作领域。这些软件可以帮助我们自动创作文章、广告、新闻等各种文本内容。但是对于初次接触这些软件的小伙伴来说,可能会感到有些迷惑,不知道ai写作软件如何使用。那么&…

网站建设需要要考虑到哪些细节

在互联网时代,网站是一个企业的门面,也是一个企业的宣传窗口,拥有一个好的网站可以让自己的产品和服务有更好的展示平台。现如今,做网站建设公司有很多,但是并不是所有的都是专业做网站建设的公司,那么如何…

C++——智能指针

目录 智能指针作用 代码 auto_ptr 特点 模拟实现 unique_ptr 模拟实现 shared_ptr 模拟实现 shared_ptr的线程安全 解决方式:加锁 代码 总结 循环引用 weak_ptr就可以解决这个问题 代码 模拟实现 定制删除器 智能指针作用 更好的解决了多个异常捕获不…

「消息中间件」Apache Kafka中的事务

在之前的一篇博客文章中,我们介绍了Apache Kafka的一次语义。这篇文章介绍了各种消息传递语义,介绍了幂等生成器、事务和Kafka流的一次处理语义。现在,我们将继续上一节的内容,深入探讨Apache Kafka中的事务。该文档的目标是让读者…

Arcgis进阶篇(7)——如何使用postgis实现要素服务,替代sde库

因为企业级地理信息数据库(sde库)需要官方许可(这里不讨论破解,对于商业项目,没啥意义),所以自然的想到使用postgis平替sde库,虽然没有sde库那么强大和方便,但是能实现很…

socket套接字及TCP的实现框架

一、socket套接字 1.体系结构的两种形式 (1)网络的体系结构是计算机网络的各层及其协议的集合,就是这个计算机网络及其构件所应完成的功能的精确定义(不涉及实现)。 (2)实现是遵循这种体系结…

语言模型主流

词向量模型 bert4keras 字级 bert4keras 文档中心 bert4keras/examples at master bojone/bert4keras GitHub mirrors / bojone / bert4keras GitCode GitHub - bojone/bert4keras: keras implement of transformers for humans bert4keras、transformers 加载预训练bert…

[4]PCB设计实验|LPWAN物联网系统解决方案 |LoRa模块/LoRa网关/云平台/LoRa应用案例|9:30~10:00

目录 1.LPWAN物联网系统解决方案 LoRa模块/LoRa网关/云平台/LoRa应用案例 2.LoRaWAN网络部署情况 LoRaWAN网络架构 3.基于LPWAN技术的无线通信端到端解决方案 LoRa低功耗广域网智能终端 CY-LRW-102开关控制器 CY-LRB-101开关检测器 4.Lo…

软件生命周期( 包括各开发模型的优缺点)知识点全面

软件生命周期 指软件产品从计划到软件交付使用,直到最终退出为止的过程。包括计划阶段、分析阶段、实现阶段、测试阶段和运行维护阶段。 软件开发模型 瀑布模型、螺旋模型、喷泉模型、原型化模型、演化模型 瀑布模型:严格遵循软件生命周期各阶段的固定顺…

vue对接海康摄像头,配合ifarme进行展示。

1、在public文件夹下建一个文件ifarme.index&#xff0c;和index.html同级。 <!doctype html> <html><head><title></title><meta http-equiv"Content-Type" content"text/html; charsetutf-8" /><meta http-equi…

支付宝电脑版二维码Java

/*生成二维码/ PostMapping(value “getQRCode”) RequestLog(“支付宝支付”) ApiOperation(“支付宝支付”) AnonAccess public String qrCode(Validated RequestBody SysMemberRecordVo sysMemberRecordVo) throws AlipayApiException { AlipayClient alipayClient new De…

聚观早报|上海迪士尼辟谣乐园落户武汉;Wi-Fi7国内标准即将落地

今日要闻&#xff1a;上海迪士尼辟谣乐园将落户武汉&#xff1b;Wi-Fi7国内标准即将落地&#xff1b;微软Office365AI助手价格曝光&#xff1b;刘畊宏20秒短视频要价60万&#xff1b;滴滴旗下公司新增互联网游戏业务 上海迪士尼辟谣乐园将落户武汉 6 月 3 日&#xff0c;有消息…

Android-Activity生命周期

文章参考&#xff1a;添加链接描述 文章参考&#xff1a;添加链接描述 五大状态 StartingRunningStoppedPausedDestroyed 借用一张已经包浆的图 PS&#xff1a;Running和Paused是可视阶段&#xff0c;其余都是不可视 几大函数 onCreate&#xff1a;通过setContentLayout初始…

如何选择最佳数据库:MongoDB、PostgreSQL或ScyllaDB?

Tractian是一家提供工业监控系统的机器智能公司。去年&#xff0c;我们面临着将我们的实时机器学习&#xff08;ML&#xff09;环境和分析仪表板升级以支持数据吞吐量的大幅增长的挑战&#xff0c;因为我们成功地将客户数据库和数据量扩大了10倍。 我们意识到&#xff0c;在快…

MySQL版本5.7.99?

序&#xff1a;在项目工作中需要从三方厂商数据库同步数据到项目业务库中&#xff0c;本平平无奇的功能却被一个报错打破。 在使用某框架的DataSourceConfig(Object)方法初始化数据库连接时&#xff0c;日志输出报错&#xff1a; Unknown system variable transaction_isolatio…