考虑到版本不能过低/过高,且需要搭配使用,所以采用 7.7.0 版本,若采用别的版本应注意各处版本号细节。
相关官方链接:
es 7.7 文档
docker 部署 es 7.7 文档
docker 部署 kibana 7.7 文档
elasticsearch jieba
elasticsearch_ik
# 获取镜像
docker pull elasticsearch:7.7.0
# 初创容器 名为 eslxd 暂无挂载
docker run -it --name eslxd -e "discovery.type=single-node" -e ES_JAVA_OPTS="-Xms128m -Xmx128m" -p 9201:9200 -p 9301:9300 \
elasticsearch:7.7.0
# 本地建立 elasticsearch 从容器中拷贝出来对应文件夹
mkdir elasticsearch
docker cp eslxd:/usr/share/elasticsearch/config /data/lxd/elasticsearch/config
docker cp eslxd:/usr/share/elasticsearch/data/ /data/lxd/elasticsearch/data
docker cp eslxd:/usr/share/elasticsearch/plugins/ /data/lxd/elasticsearch/plugins
# 停止并删掉刚刚的容器 eslxd
docker stop eslxd
docker rm eslxd
# 修改本地 elasticsearch 为最高权限
sudo chmod 777 -R elasticsearch
# 再创容器 名为 eslxd 挂载 3 个文件 分别为 config data 和 plugins
docker run -it --name eslxd -e "discovery.type=single-node" -e ES_JAVA_OPTS="-Xms128m -Xmx128m" -p 9201:9200 -p 9301:9300 \
-v /data/lxd/elasticsearch/config:/usr/share/elasticsearch/config \
-v /data/lxd/elasticsearch/data:/usr/share/elasticsearch/data \
-v /data/lxd/elasticsearch/plugins:/usr/share/elasticsearch/plugins \
elasticsearch:7.7.0
docker pull kibana:7.7.0
docker run -d --name kbnlxd -p 5611:5601 kibana:7.7.0
mkdir kibana
docker cp kbnlxd:/usr/share/kibana/config/ /data/lxd/kibana/
docker stop kbnlxd
docker rm kbnlxd
sudo chmod 777 -R kibana
cd /data/lxd/kibana/config/
vim kibana.yml
# 修改 host 为前面 es 的端口为 http://192.168.14.77:9201
docker run -d --name kbnlxd -p 5611:5601 \
-v /data/lxd/kibana/config:/usr/share/kibana/config \
kibana:7.7.0
POST _analyze
{
"analyzer": "standard",
"text": "共和国"
}
{
"tokens" : [
{
"token" : "共",
"start_offset" : 0,
"end_offset" : 1,
"type" : "",
"position" : 0
},
{
"token" : "和",
"start_offset" : 1,
"end_offset" : 2,
"type" : "",
"position" : 1
},
{
"token" : "国",
"start_offset" : 2,
"end_offset" : 3,
"type" : "",
"position" : 2
}
]
}
打开ik7.7.0链接下载 [elasticsearch-analysis-ik-7.7.0.zip]
并解压,将解压后的文件夹放在 elasticsearch 的 plugins 下。
POST _analyze
{
"analyzer": "ik_smart",
"text": "共和国"
}
{
"tokens" : [
{
"token" : "共和国",
"start_offset" : 0,
"end_offset" : 3,
"type" : "CN_WORD",
"position" : 0
}
]
}