搞了一天,踩了好多坑,特此分享
本贴安装版本为5.6.16
先docker pull

docker pull elasticsearch:5.6.16

然后安装

docker run -di --name es02 -p 9200:9200 -p 9300:9300 -e ES_JAVA_OPTS="-Xms512m -Xmx512m" -e "discovery.type=single-node" elasticsearch:5.6.16

es安装完成
进入容器

docker exec -it es02 /bin/bash

下载同版本ik

wget https://github.com/medcl/elasticsearch-analysis-ik/releases/download/v5.6.16/elasticsearch-analysis-ik-5.6.16.zip

解压:

unzip elasticsearch-analysis-ik-5.6.16.zip -d ./

会多出一个elasticsearch的文件夹

然后进入plugins文件夹创建ik文件夹:

mkdir ik

回到刚才目录
将elasticsearch文件夹内所有文件copy进plugins的ik文件夹下

cp -r elasticsearch/* plugins/ik

退出容器,重启

exit
docker restart es02

如使用elasticsearch-head连接不上
可进入容器配置跨域

docker exec -it es02 /bin/bash
cd config
vi elasticsearch.yml

添加以下配置

http.cors.enabled: true
http.cors.allow-origin: "*"

如上面提示找不到vi指令
可以通过如下指令安装

apt-get update
 apt-get install vim

提示:此方法不适用于5.6.8版本,(搞了一下午5.6.8,ik分词器直接解压到plugins会报错NoSuchFileException:plugin-descriptor.properties)

如上述操作导致elasticsearch重启失败
提供一个纠错改错方法:

查看日志:

docker logs -f es02

容器无法开启时可进入/var/lib/docker/查找elasticsearch

find ./ | grep elasticsearch/config

可以不用开启容器修改容器配置文件等

Logo

腾讯云面向开发者汇聚海量精品云计算使用和开发经验,营造开放的云计算技术生态圈。

更多推荐