这是春节前的最后一天班了,写个文章,留个脚印,之前写的第一篇文章是有关nifi的,但是感觉太浅显,后面又给删了,用了这么久的csdn,不能光白嫖别人的,也要贡献一点出来才是。废话不多说!
本文环境:es:7.16.3,kibana:7.16.3,ik:7.16.3
使用的虚拟机vm 16(为啥用16,因为15启动centos老是莫名其妙导致蓝屏),安装的是centos 7
git下载地址
https://github.com/medcl/elasticsearch-analysis-ik/releases
git嘛,懂的都懂,偶尔不靠谱,有时连不上,我下载的是最新的7.16.3, 如果有一直下载不下来的,可以找我,百度云甩你一个
这里需要先用xftp或者什么其他工具,把你下载好的ik zip放到虚拟机内(这个懂吧?)
1.使用docker cp 语句把下载好的ik zip放进去
### 下载好的压缩包,使用xftp上传到虚拟机的/home/elasticsearch/目录下,然后使用docker cp命令 复制到docker容器里的/usr/share/elasticsearch/plugins 目录下
docker cp [需要复制文件的路径] [容器名称]:[容器内的路径]
docker cp /home/elasticsearch/elasticsearch-analysis-ik-7.16.3.zip elasticsearch:/usr/share/elasticsearch/plugins
2.进入docker容器
docker exec -it [容器id或容器名] /bin/bash
3.进入复制好zip的路径下,/usr/share/elasticsearch/plugins,可以查看到zip已经复制好,然后pwd查看下当前目录,方便下面解压
### 使用unzip命令解压
### -d<目录>指定文件解压缩后所要存储的目录
unzip elasticsearch-analysis-ik-7.16.3.zip -d /usr/share/elasticsearch/plugins/ik
然后记得把zip文件给删除了,不然会导致docker容器起不来
然后就是重启es容器了
docker restart [容器id]
因为第一次解压完,然后没有删掉这个zip文件,导致我重新启动es容器,直接起不起来了
解压完停掉容器,开启容器,docker ps 找不到启动的容器,就是启动了,但是又马上停掉了
tips :这里其实可以用 docker restart [容器id] 进行重启,不用stop再start的
使用 docker logs 容器id 查看容器日志
docker logs [容器id]
这个报错应该就是因为解压后,没有删掉压缩包导致的
解决办法 :删除这个容器,然后重新用镜像再run一个容器出来,重新copy,重新解压,然后删掉zip,只留下解压后的ik文件夹就行
(但是特么这个不合理啊,可能是我还不太会用docker,我一个容器,拷个东西进去,结果导致容器起不来怎么办,只能删除容器,重新run个容器出来 有没有让我进去容器的方法,然后直接把东西删掉,然后就行了?有知道的大佬,还请教学一波!!!)
还有个问题:就是重启之后的es容器,kibana莫名其妙访问不了,因为kibana是一开始就起好(跟随第一个被删掉的es容器,一起启动的),没动过的,不知道是不是有个先后顺序?就是kibana启动一定是在es启动后再启动?这也很不合理,反正就是这么神奇,有知道的大佬,也请科普一下,后面直接再重新启动一下kibana,刷新下浏览器就能登陆了,但是kibana右下角会有个提示(没截图)
server.publicBaseUrl is missing and should be configured when running in a production environment. Some features may not behave correctly. See the documentation.
server.publicBaseUrl 缺失,应在生产环境中运行时进行配置。 某些功能可能无法正常运行。 请参阅文档。
不是很懂是不是装了ik分词器的问题,是不是什么配置文件要加什么内容进去,有百度了下,但是我忽略了,直接进kibana也是能进的,并且分词器也是起了效果
到这里,docker中es安装ik分词器就算搞完了,学啥都是半吊子晃荡,以上文章如有错误的地方,还请指正,免得误人子弟。
祝各位,春节快乐!