注意:
版本必须一致
我用的版本是:7.6.2
这里有坑:es版本一定要注意,因为接下来与springboot融合的时候,还会有坑
7.6.2对应的springboot版本是:2.3.x.RELEASE
我用的版本是:2.3.2.RELEASE
一.安装elasticsearch
1.下载
docker pull elasticsearch:7.6.2
2.linux本地新建es挂在目录
mkdir /usr/java/es
mkdir /usr/java/es/config
mkdir /usr/java/es/data
mkdir /usr/java/es/plugins
3.es文件夹添加权限
chmod -R 777 es/
4.创建es配置文件
echo "http.host: 0.0.0.0">>/usr/java/es/config/elasticsearch.yml
注意:http.host: 0.0.0.0 冒号后有一空格
5.启动容器
docker run --name elasticsearch -p 9200:9200 \
-p 9300:9300 \
-e "discovery.type=single-node" \
-e ES_JAVA_OPTS="-Xms128m -Xmx128m" \
-v /usr/java/es/config/elasticsearch.yml:/usr/share/elasticsearch/config/elasticsearch.yml \
-v /usr/java/es/data:/usr/share/elasticsearch/data \
-v /usr/java/es/plugins:/usr/share/elasticsearch/plugins \
-d elasticsearch:7.6.2
注意:启动的容器需要指定拉取的版本号,否则会重新最新版本
6.查看并测试
(1)查看
docker ps
(2)测试
curl http://localhost:9200
如图表示OK
注意:如果是相应的云设备,一定要打开9200,9300端口
9200:外部访问接口
9300:集群间通信接口
二.安装kibana
1.下载
docker pull kibana:7.6.2
2.linux本地新建kibana配置目录
mkdir /usr/java/kibana
mkdir /usr/java/kibana/config
mkdir /usr/java/kibana/data
mkdir /usr/java/kibana/plugins
3.新建kibana配置文件
vim /usr/java/kibana/config/kibana.yml
4.kibana.yml文件内添加配置内容
server.name: kibana
server.host: "0"
elasticsearch.hosts: [ "http://es的IP:9200" ]
xpack.monitoring.ui.container.elasticsearch.enabled: true
#设置kibana中文显示
i18n.locale: zh-CN
注意:es的ip是你安装的es的ip
5.查看es的ip
docker inspect --format '{{ .NetworkSettings.IPAddress }}' 容器ID
将"es的ip"替换为对应的容器ip地址
6.启动容器
docker run -d --name kibana -p 5601:5601 \
-v /usr/java/kibana/config/kibana.yml:/usr/share/kibana/config/kibana.yml \
-v /usr/java/kibana/data:/usr/share/kibana/data \
-v /usr/java/kibana/plugins:/usr/share/kibana/plugins \
kibana:7.6.2
7.访问
http://服务器ip地址:5601
注意:相应云设备要打开5601端口
三.安装ik分词器
1.下载
https://github.com/medcl/elasticsearch-analysis-ik/releases/tag/v7.6.2
2.上传
(1)新建文件夹
mkdir ik
cd ik
(2)rz上传下载下来的ik压缩包,解压
unzip XXX-zip
(3)解压后,删除原始zip包
(4)重启es容器
docker restart 容器id
3.测试
GET _analyze?pretty
{
"analyzer": "ik_smart",
"text": "国家未来发展计划"
}
ik_max_word:最大分词
ik_smart:智能分词
standard:标准分词