win10使用docker安装ElasticSearch

2023-02-03

说明

环境:Win10、docker-Ubuntu

ElasticSearch:8.4.1

Kibana:8.4.1

IK:8.4.1

ElasticSearch、Kibana、IK这三个版本尽量保持一致,可能会出现版本对不上的错误,导致无法启动ES数据库。目前ElasticSearch、Kibana的最新版本为8.4.3,但是IK的最新版本是8.4.1,所以我们统一版本都选择8.4.1

image-20221012102702884

参考:使用docker部署elasticsearch+kibana-chenm1xuexi的博客-CSDN博客

docker部署elasticsearch容器安装ik分词器 - 开顺 - 博客园 (cnblogs.com)

安装部署ElasticSearch

拉取镜像

image-20221012104416765

启动ES

image-20221012104934138

挂载数据卷
准备本机路径

d盘下的esdata文件夹:/d/esdata,并创建data、logs文件夹

查看es配置信息

image-20221009180907672

将容器内部配置文件拷贝到本地

image-20221010094716998

关闭并移除ES

image-20221010094955320

挂载数据卷

挂载的意思是将容器运行所需要配置文件、文件存储空间都放在本机。这样做即使容器被销毁,容器的配置文件和数据都还在本地存储,不会受影响,挂载后修改其中一端的数据,另一端数据也会随之更改

image-20221012111655518

挂载的格式: -v 本机路径:容器内路径

值得注意:window下命令行没有换行、挂载整个config文件夹、使用绝对路径

参考:Docker for Windows 安装 ElasticSearch 和 ik 分词器 挂载磁盘 | 言曌博客 (liuyanzhao.com)

image-20221010160202969

访问ES

https://127.0.0.1:9200

image-20221010161711864

我们可以使用账号密码登录也可以直接跳过

账号密码登录

进入容器内部借助 elasticsearch-reset-password工具重置密码

image-20221010162131658

成功后直接使用【elastic、密码】登录即可

image-20221010162234117

忽略验证直接登录

将ES配置文件【elasticsearch.yml】中的配置【xpack.security.enabled】改成 false,意思是不需要账号密码不需要使用https协议,更多配置如下

注意如果你已经挂载到本地,则直接在本地修改,若未挂载到本地则需要进入容器内部修改配置文件

image-20221010162859891

重启ES服务

直接访问 127.0.0.1:9200

image-20221010163331103

安装部署Kibana

拉取镜像

image-20221012105449925

启动Kibana

--link es:链接ES数据库,格式:--link [ES的容器名称]

-e:指定ES的链接路径,要注意一下你的ES数据库使用http还是https

查看kibana日志,等待日志出链接,再访问链接(0.0.0.0改成127.0.0.1或你的ip即可)

image-20221010180625970

配置kibana链接ES
访问链接:http://127.0.0.1:5601/

image-20221011174225383

进入ES容器生成token

注意ES8版本后,启动ES不会自动生成token,需要手动去生成,若手动生成token失败,说明你的ES并没有启动成功,可以检查一下配置文件和启动命令

image-20221011174413820

成功生成token后,将其填入网页输入框,并点击验证按钮

image-20221012110212448

进入kibana容器生成token

成功生成验证码后,输入并验证

image-20221011174636744

使用ES的账号密码登录

image-20221012112304803

待验证完成后使用ES的账号密码登录

image-20221011174804462

首页侧边菜单栏选择【Dev Tools】

image-20221011174935494

在这里我们可以使用kibana命令更好的操作ES数据库,ES没有kibana也是可以正常使用的

image-20221012100841173

安装部署IK分词器

下载指定版本IKReleases · medcl/elasticsearch-analysis-ik (github.com)

image-20221012101512642

挂载数据卷

挂载数据卷启动的话,我们直接将压缩包解压到我们本机的plugins文件夹下然后重启ES数据库即可

image-20221012102029746

未挂载数据卷

未挂载数据卷启动,我们需要将ik压缩包拷贝到容器内部的plugins文件夹下,再进行解压,将压缩包删除然后重启ES数据库即可

image-20221012113942698

测试分词器

安装ik分词器插件前

image-20221012113728559

安装ik分词器插件后,表名分词器插件安装成功

image-20221012112638461