Elasticsearch8.6.0安装
Elasticsearch 8.5.0 安装
- Elasticsearch 简介
- Elasticsearch 8.6.0 安装
- 创建网络
- 拉取镜像
- 运行镜像
- 设置密码
- 修改kibana配置
- 绑定ES
- 代码绑定:
- 手动绑定:
- 配置ik分词器
- 扩展词词典
- 停用词词典
Elasticsearch 简介
- Elasticsearch(ES) 是一个基于 Apache Lucene 开源的分布式、高扩展、近实时的搜索引擎,主要用于海量数据快速存储,实时检索,高效分析的场景。通过简单易用的 RESTful API,隐藏 Lucene 的复杂性,让全文搜索变得简单。
- ES 功能总结有三点:
- 分布式 存储
- 分布式 搜索
- 分布式 分析
- 因为是分布式,可将海量数据分散到多台服务器上存储,检索和分析,只要是海量数据需要完成上面这三种操作的业务场景,一般都会考虑使用 ES,比如维基百科,Stack Overflow,GitHub 后台均有使用。
Elasticsearch 8.6.0 安装
使用 Docker 安装
创建网络
- 因为需要部署kibana容器,因此需要让es和kibana容器互联。这里先创建一个网络:
- docker network create es-net
拉取镜像
- docker pull elasticsearch:8.6.0
- docker pull kibana:8.6.0
运行镜像
- 挂载目录都在 /var/lib/docker/volumes下的
- 启动es容器:
docker run -it -d \
--name es \
-p 9200:9200 -p 9300:9300 \
-e "discovery.type=single-node" \
-e ES_JAVA_OPTS="-Xms1024m -Xmx1024m" \
-v es-data:/usr/share/elasticsearch/data \
-v es-plugins:/usr/share/elasticsearch/plugins \
-v es-config:/usr/share/elasticsearch/config \
--privileged \
--network es-net \
elasticsearch:8.6.0
- 访问网页 http://你的ip:9200/ 查看运启动结果
- 启动 kibana 容器
docker run -it -d \
-p 5601:5601 \
--name kibana \
-e ELASTICSEARCH_URL=http://127.0.0.1:9200 \
--network=es-net \
kibana:8.6.0
- 访问网页 http://你的ip:5601/ 查看运启动结果
设置密码
- 进入es容器
- docker exec -it es /bin/bash
- elasticsearch-setup-passwords interactive
- 如果不报错就万幸了,一个一个的设置密码。
- 如果报错:
- elasticsearch-reset-password -i -u
- 依次修改 elastic、apm_system、kibana_system、logstash_system、beats_system、remote_monitoring_user 的密码。
- 会提示你:Please confirm that you would like to continue [y/N]
- 输入 y
- 然后两次输入密码即可。

- elasticsearch-reset-password -i -u
修改kibana配置
- 先退出
- exit
- vim /var/lib/docker/volumes/kibana/usr/share/kibana/config/kibana.yml
- 在末尾插入
elasticsearch.username: "elastic"
# 记得修改密码为自己的
elasticsearch.password: "123456"
# 汉化
i18n.locale: "zh-CN"

- 保存退出
- 重启 kibana
- docker restart kibana
- 然后等1分钟刷新网页,发现已经 汉化成功了。
绑定ES
代码绑定:
- docker exec -it es /bin/bash
- elasticsearch-create-enrollment-token --scope kibana
- 把这一串签名 复制到 kibana 网页(服务器ip:5601)中。http://你的ip:5601/
- 记得要快,好像是30分钟的期限。


出现验证代码请求

- 退出es
- exit
- 进入 kibana 容器生成 code
-
docker exec -it kibana /bin/bash
-
bin/kibana-verification-code

-
复制这个 code 到网页上去,(直接复制粘贴,手打可能输不上去)
-
- 输入用户名密码:(用户名:elastic)
手动绑定:
-
手动设置:点击

-
输入 自己的网页 http://你的ip:9200/
-
输入用户名密码:(用户名:elastic)
-
进入 kibana 容器生成 code
-
docker exec -it kibana /bin/bash
-
bin/kibana-verification-code

-
复制这个 code 到网页上去,(直接复制粘贴,手打可能输不上去)
-
配置ik分词器
-
下载地址(注意版本一致性):https://github.com/medcl/elasticsearch-analysis-ik/archive/refs/tags/v8.6.0.zip
-
里面包含如下文件

-
解压,重命名为 ik
-
安装插件需要知道elasticsearch的plugins目录位置,而我们用了数据卷挂载,因此需要查看elasticsearch的
数据卷目录,通过下面命令查看:-
docker volume inspect es-plugins

-
说明plugins目录被挂载到了: /var/lib/docker/volumes/es-plugins/_data 这个目录中。
-
-
将 刚解压并改名的 ik文件 放到挂载文件夹里

-
重启容器:
- docker restart es
- docker restart kibana
-
进入容器:
- docker exec -it es /bin/bash
-
查看已安装分词器
- bin/elasticsearch-plugin list

- bin/elasticsearch-plugin list
扩展词词典
- 随着互联网的发展,“造词运动”也越发的频繁。出现了很多新的词语,在原有的词汇列表中并不存在。比
如:“奥力给” 等。为此 IK 分词器提供了扩展词汇的功能。 - 打开IK分词器 config目录(刚挂载进来的文件)
- 找到 IKAnalyzer.cfg.xml 文件并编辑
- 我的是:vim /var/lib/docker/volumes/es- plugins/_data/ik/config/IKAnalyzer.cfg.xml
- 在 < entry key=“ext_dict”> 标签中添加:ext.dic
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE properties SYSTEM "http://java.sun.com/dtd/properties.dtd">
<properties><comment>IK Analyzer 扩展配置</comment><!--用户可以在这里配置自己的扩展字典 * 添加扩展词典 --><entry key="ext_dict">ext.dic</entry>
</properties>
- 保存并退出
- 新建一个 ext.dic,里面存放词汇。可以参考config目录下复制一个配置文件进行修改
- 移动到 config 目录下
- cp main.dic ext.dic
- vim ext.dic
- 直接按 d + G,删除全部,再写入自己的关键词
- 注意当前文件的编码必须是 UTF-8 格式,严禁使用Windows记事本编辑
泰裤辣
家人们
- 重启 ES:
- docker restart es
- 测试效果
GET /_analyze
{
"analyzer": "ik_max_word",
"text": "西安欧鹏太棒了,奥力给!"
}
停用词词典
- 在互联网项目中,在网络间传输的速度很快,所以很多语言是不允许在网络上传递的,如:关于宗教、政治等
敏感词语,那么我们在搜索时也应该忽略当前词汇。 - IK分词器也提供了强大的停用词功能,让我们在索引时就直接忽略当前的停用词汇表中的内容。
- 打开IKAnalyzer.cfg.xml 配置文件
- vim /var/lib/docker/volumes/es-plugins/_data/ik/config/IKAnalyzer.cfg.xml
- 在 < entry key=“ext_stopwords”> 标签中添加:stopword.dic
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE properties SYSTEM "http://java.sun.com/dtd/properties.dtd">
<properties><comment>IK Analyzer 扩展配置</comment><!--用户可以在这里配置自己的扩展字典 --><entry key="ext_dict">ext.dic</entry><!--用户可以在这里配置自己的扩展停止词字典--><entry key="ext_stopwords">stopword.dic</entry>
</properties>
- 新建一个 stopword.dic,里面存放词汇。可以参考config目录下复制一个配置文件进行修改
- 已经有就不用添加了
- 若没有:
- 移动到 config 目录下
- cp main.dic stopword.dic
- vim stopword.dic
- 直接按 d + G,删除全部,再写入自己的关键词
相关文章:
Elasticsearch8.6.0安装
Elasticsearch 8.5.0 安装 Elasticsearch 简介Elasticsearch 8.6.0 安装创建网络拉取镜像运行镜像设置密码修改kibana配置绑定ES代码绑定:手动绑定: 配置ik分词器扩展词词典停用词词典 Elasticsearch 简介 Elasticsearch(ES) 是一…...
Vue - 第五天 动态组件 插槽 自定义指令
动态组件& 插槽& 自定义指令 一、动态组件1.什么是动态组件2.如何实现动态组件渲染3.使用 keep-alive 保持状态4. keep-alive 对应的生命周期函数5. keep-alive 的 include 属性6.动态展示左右组件7.例子 二、插槽1.什么是插槽2.体验插槽的基础用法2.1 没有预留插槽的内…...
如何开展web自动化测试
Web 自动化是指使用测试脚本在 Web 上自动执行任务。它包括填写表单、导航网页、单击链接或按钮以及从网站中提取数据等任务。 它可用于各种目的,例如自动输入数据或测试网站的功能。有几种工具和编程语言可用于自动化网络上的任务,包括Selenium&#x…...
【博学谷学习记录】超强总结,用心分享 | 架构师 Maven学习总结
文章目录 Maven基本1.什么是Maven2.为什么用Maven?(1)jar 包的规模(2) jar 包的来源(3)jar 包之间的依赖关系 3.Maven目录结构4.maven仓库配置 Pom层次Pom文件简介Super POM 依赖管理1 依赖传递2 传递性依…...
PPT里文字太多如何排版-一口气教你7种布局瞬间让PPT高大上起来
简介 这是我们学PPT处于初级到中级进化阶段常做的一件事,就是拿了这种纯文字类版面来做布局。而且这种文字都是政企类的、相当苦涩难懂、无法创意。 因此我们会要求使用7种排版来优化这个版面。这和达芳奇画鸡蛋很像,这样的练习需要坚持一段时间,就是拿了纯文字来beautifu…...
Whistle(基于 Node 实现的跨平台抓包调试工具)的使用
Whistle(基于 Node 实现的跨平台抓包调试工具)的使用 基于Node实现的跨平台抓包调试工具 可以劫持网络请求,并进行请求和响应的修改,来提高我们的开发调试效率 1.一键安装(装包/证书) npm i -g whistle && w2 start --init 证书的问题 安装…...
数学模型:Python实现非线性规划
上篇文章:整数规划 文章摘要:非线性规划的Python实现。 参考书籍:数学建模算法与应用(第3版)司守奎 孙玺菁。 PS:只涉及了具体实现并不涉及底层理论。学习底层理论以及底层理论实现:可以参考1.最优化模型与算法——基于…...
Docker网路模型(四)使用 bridge 网络
使用 bridge 网络 在计算机网络中,一个 bridge(网桥)是一个链路层设备,负责在不同的网段之间转发信息。 bridge 可以是真实的硬件设备也可以是由宿主机底层提供的软件模拟设备。 在 Docker 中,bridge 网络使用了软件…...
数据结构与算法之美 | 排序(2)
归并排序(Merge Sort) 基本思想: 如果要排序一个数组,我们先把数组从中间分成前后两部分,然后对前后两部分分别排序,再将排好序的两部分合并在一起,这样整个数组就都有序了。 def merge_sort…...
【外企面试系列】必备口语短语与例句 - A系列
a big headache令人头痛的事情 I have a big headache from all the noise. (我因为噪音而头痛。)The paperwork is a big headache for me. (对我来说,文书工作是件头痛的事情。) a fraction of 一部分 She ate only a fraction of her meal. (她只吃了一部分饭…...
Java使用Opencv进行大图找小图并使用其找图功能进行bilibili视频下载案例
Java使用Opencv进行大图找小图并使用其找图功能进行bilibili视频下载案例 一、Opencv大图找小图说明二、Opencv的window安装1.下载windows下的安装包2.安装3.Java中Opencv加载测试 三、Java中通过Opencv进行模板匹配大图找小图四、进行多图查找五:案例下载bilibili视…...
肠道健康从核心菌属开始:肠道菌群的关键
谷禾健康 5月29日,是世界肠道健康日。肠道是人体最重要的消化系统之一,与人体健康紧密相关。而肠道菌群作为肠道重要组成部分,在肠道健康中发挥着重要的作用。 编辑 由于基因、环境、饮食、药物等因素的影响,每个人的肠道菌群都…...
深度学习实战37-NASNet(具有自动搜索能力的神经网络模型)的搭建与实战应用
大家好,我是微学AI,今天给大家介绍一下深度学习实战37-NASNet(具有自动搜索能力的神经网络模型)的搭建与实战应用,NASNet是由Google Brain团队开发的一种具有自动搜索能力的神经网络模型,利用强化学习和进化算法等技术来自动地搜索最优的神经网络架构。NASNet模型的设计灵感…...
碳排放预测模型 | Python实现基于机器学习回归分析的碳排放预测模型——随机森林、决策树、KNN 和多层感知器 (MLP) 预测分析
文章目录 效果一览文章概述研究内容环境准备源码设计KNNRandom ForestDecision TreeMLPModel Evaluation学习总结参考资料效果一览...
人体检测技术之毫米波雷达
人体检测技术之毫米波雷达 1.概述 智能人脸/视频锁领域的人体检测需求是要求远距离达到1m左右即可,一旦在此距离内检测人,则锁唤醒进行人脸识别,视频录制等操作。所以,人体检测技术非常关键。 选型主要是几个维度: 1.支持检测的距离范围,能否准确输出距离信息 2.支持…...
“Chain of Thought Reasoning“ 和 “Chain Prompts“ 是什么
"Chain of Thought Reasoning" 和 "Chain Prompts" 是什么 1. "Chain Prompts" 是什么2. “Chain of Thought Reasoning” 是什么 1. “Chain Prompts” 是什么 “Chain Prompts” 是指一系列相关的提示,它们之间有逻辑上的联系和依赖关系。用户…...
signal
读信号,dqs 是对齐到dq的边沿, 写信号,dqs 的边沿是对到中间的。 spec 就是这样规定的。我们在dq的最中间的采样,肯定是最安全的。 dqs 是对齐到dq的边沿 , 在silicon 内部,还是通过移位完成的。 rl: re…...
深度研究微软的资产负债表和财务状况以及未来投资价值
来源:猛兽财经 作者:猛兽财经 微软股票的关键指标 猛兽财经认为,微软公布的2023财年第三季度财务业绩,有三个关键指标值得投资者关注。 第一个关键指标是利息收入。微软的利息收入目前已经同比增长了44%,从2022财年第…...
Mac电脑删除第三方软件工具CleanMyMac X
经常使用Mac的人都知道,Mac除了可以在AppStore下载应用程序,还有许多软件是需要在网页上搜索下载的第三方软件。那么这类第三方软件软件除了下载方式不同之外还有什么是和从App store下载的软件有区别的吗?答案是肯定的,那就是这些…...
leetcode174. 地下城游戏(java)
地下城游戏 leetcode174. 地下城游戏题目描述 动态规划解题思路代码 动态规划专题 leetcode174. 地下城游戏 来源:力扣(LeetCode) 链接:https://leetcode.cn/problems/dungeon-game 题目描述 恶魔们抓住了公主并将她关在了地下城 …...
RBD_Timer:嵌入式轻量级多定时器时间轮调度框架
1. RBD_Timer 库深度解析:面向嵌入式实时系统的轻量级多定时器管理框架1.1 问题根源:Arduino 原生delay()与中断阻塞对实时性的破坏在 Arduino 生态中,delay()函数被广泛用于实现时间等待逻辑。然而其底层实现本质是忙等待(busy-w…...
Nimbus:一个统一的具身合成数据生成框架
Zeyu He, Yuchang Zhang, Yuanzhen Zhou, Miao Tao, Hengjie Li,∗, Hui Wang, Yang Tian, Jia Zeng, Tai Wang, Wenzhe Cai, Yilun Chen, Ning Gao, Jiangmiao Pang摘要扩大数据规模和多样性对于泛化具身智能至关重要。虽然合成数据生成为昂贵的物理数据采集提供了可扩展的替代…...
ROS2数据录制实战:手把手教你用ros2 bag记录Duckiebot图像数据(附常见错误排查)
ROS2数据录制实战:从Duckiebot仿真到真实场景的全流程指南 在机器人开发过程中,数据记录与分析是算法验证和系统调试的关键环节。ROS2提供的ros2 bag工具链为开发者提供了强大的数据采集能力,但实际应用中往往会遇到各种意料之外的问题。本文…...
OpenClaw技能市场盘点:10个适配Qwen3.5-4B-Claude的实用工具
OpenClaw技能市场盘点:10个适配Qwen3.5-4B-Claude的实用工具 1. 为什么需要关注技能适配性 当我第一次在OpenClaw上尝试安装第三方技能时,遇到了一个典型问题:技能安装成功了,但执行时模型总是输出"我不明白这个请求"…...
别再傻傻分不清了!用Simulink手把手带你搞懂导纳控制与阻抗控制的本质区别
导纳控制 vs 阻抗控制:从理论到Simulink实战的深度解析 在机器人控制领域,柔性交互是一个永恒的话题。想象一下,当机械臂需要完成精密装配任务时,既要有足够的刚性保证定位精度,又要在意外碰撞时表现出适当的柔顺性——…...
3步深度配置Obsidian Copilot:打造专属AI知识工作流
3步深度配置Obsidian Copilot:打造专属AI知识工作流 【免费下载链接】obsidian-copilot A ChatGPT Copilot in Obsidian 项目地址: https://gitcode.com/gh_mirrors/ob/obsidian-copilot 在信息爆炸时代,知识工作者面临的最大挑战不是获取信息&am…...
w3x2lni:魔兽地图跨版本转换的技术架构与实战指南
w3x2lni:魔兽地图跨版本转换的技术架构与实战指南 【免费下载链接】w3x2lni 魔兽地图格式转换工具 项目地址: https://gitcode.com/gh_mirrors/w3/w3x2lni 一、价值定位:破解魔兽地图版本兼容难题 魔兽争霸III地图开发者长期面临版本碎片化挑战&…...
JAVA重点基础、进阶知识及易错点总结(1)---数据类型、运算符、流程控制
🚀 Java 巩固进阶 第1天 主题:数据类型、运算符与流程控制 —— 避开那些“隐形”的坑📅 进度概览:重启Java基础。 💡 核心价值:很多生产环境的Bug(如金额精度丢失、空指针崩溃、逻辑穿透&…...
吃透MQ:从原理到落地,解决分布式系统的核心痛点
在分布式系统与微服务架构普及的今天,“高并发、高可用、低耦合”成为系统设计的核心诉求。而消息队列(Message Queue,简称MQ),作为分布式架构中的“通信枢纽”,凭借异步通信、流量削峰、系统解耦等核心能力…...
SDMatte与前端Vue.js结合:打造交互式在线抠图工具
SDMatte与前端Vue.js结合:打造交互式在线抠图工具 1. 引言:让抠图变得简单高效 想象一下这样的场景:电商运营每天需要处理上百张商品图片,设计师反复在Photoshop里手动抠图,自媒体创作者为找不到合适的透明背景素材发…...
