文章目录
- 引言
- 1.docker下安装ElasticSearch
- 2.下载ES镜像
- 3.查看镜像(注意下一步用到版本号):
- 4.启动ES
- 5.浏览器访问
- 6.解决跨域
- 7.安装IK分词器
- 8.docker下安装Kibana
- 8.3.3.访问
- 9.总结
引言
接下来准备讲解商品搜索,商品搜索用到了ES,所以本文先讲解在Docker下搭建ES与ES的可视化工具Kibana
注意:
- 虚拟机内存建议在3.5G以上,测试前先关闭虚拟机防火墙!
- Elasticsearch版本号、Kibana版本号以及IK分词器版本号必须一致!
PS:跑起ES和ElasticSearch占内存3.4G,如下:
1.docker下安装ElasticSearch
调高JVM线程数限制数量(一定要先设置!)
vim /etc/sysctl.conf
# 添加这个
vm.max_map_count=262144
# 保存后执行这个命令
sysctl -p
2.下载ES镜像
在使用docker 拉去最新的镜像时,会提示如下错误:
这里错误的意思是docker需要我们指定下载镜像的版本号。
但是我们想下载最新的版本号,该如何得知最新的版本号呢?
我们可以登录docker hub:https://hub.docker.com/u/library,搜索自己想要下载的镜像名:
点击搜索出来列表里的镜像,进入详情页面,点击Tags,第一个镜像就是最新的,可以看出,最新的镜像版本号为7.6.1:
重新使用docker执行版本号拉取,可以看到正在下载:
3.查看镜像(注意下一步用到版本号):
4.启动ES
docker run --name elasticsearch -p 9200:9200 -p 9300:9300 -e "discovery.type=single-node" -d elasticsearch:7.6.1
5.浏览器访问
浏览器访问http://你的ip:9200/
,可以看到访问成功。
6.解决跨域
6.1.修改配置,解决跨域访问问题
docker exec -it elasticsearch /bin/bash
cd /usr/share/elasticsearch/config/
vi elasticsearch.yml
在elasticsearch.yml的文件末尾加上:
http.cors.enabled: true
http.cors.allow-origin: "*"
6.2.保存退出后,重启容器
exit
docker restart elasticsearch
7.安装IK分词器
elasticsearch
的版本和ik分词器的版本需要保持一致,不然在重启的时候会失败。ik分词器地址:https://github.com/medcl/elasticsearch-analysis-ik/releases
7.1.进入容器
docker exec -it elasticsearch /bin/bash
7.2.下载安装ik分词器
cd /usr/share/elasticsearch/plugins/
elasticsearch-plugin install https://github.com/medcl/elasticsearch-analysis-ik/releases/download/v7.6.1/elasticsearch-analysis-ik-7.6.1.zip
exit
docker restart elasticsearch
7.3.重启
exit
docker restart elasticsearch
8.docker下安装Kibana
8.1.docker 拉取kibana镜像
docker pull kibana:7.6.1
8.2.启动kibana
docker run --name kibana --add-host elasticsearch:192.168.10.134 --link=5a18e09c94de:test -p 5601:5601 -d kibana:7.6.1
8.3.3.访问
启动耐心等候几分钟,浏览器输入:http://yourip:5601/app/kibana,可以看到Kibana成功启动。
9.总结
本文主要讲解在Docker下安装ES和Kibana