引言
本文代码已提交至Github,有兴趣的同学可以下载来看看:https://github.com/ylw-github/taodong-shop
接下来准备讲解商品搜索,商品搜索用到了ES,所以本文先讲解在Docker下搭建ES与ES的可视化工具Kibana。ELK(Elastic+Logstash+Kibana)在之前《分布式专栏》已经讲过,不过环境是在Linux下搭建的,有兴趣的同学可以阅读:
- 《分布式系列教程(26) -分布式日志搜集工具Elasticsearch简介》
- 《分布式系列教程(27) -Linux环境下安装Elasticsearch》
- 《分布式系列教程(28) -Linux环境安装Kibana》
- 《分布式系列教程(29) -Kibana实现增删改查》
- 《分布式系列教程(30) -SpringBoot整合ElasticSearch》
- 《分布式系列教程(31) -ElasticSearch倒排索引》
- 《分布式系列教程(32) -ElasticSearch条件查询》
- 《分布式系列教程(33) -ElasticSearch DSL语言查询与过滤》
- 《分布式系列教程(34) -Linux下安装ik分词器》
- 《分布式系列教程(35) -ElasticSearch文档映射》
- 《分布式系列教程(36) -ElasticSearch集群原理》
- 《分布式系列教程(37) -Linux下搭建ElasticSearch集群》
- 《分布式系列教程(38) -SpringBoot基于ES的网盘应用》
- 《分布式系列教程(39) -分布式日志采集系统ELK》
- 《分布式系列教程(40) -Linux下安装Logstash》
- 《分布式系列教程(41) -Logtash的简单使用》
- 《分布式系列教程(42) -ELK配置与使用》
本文目录结构:
l____ 1.docker下安装ElasticSearch
注意:
1. 虚拟机内存建议在3.5G以上,测试前先关闭虚拟机防火墙!
2. Elasticsearch版本号、Kibana版本号以及IK分词器版本号必须一致!
PS:跑起ES和ElasticSearch占内存3.4G,如下:
1.docker下安装ElasticSearch
Docker的安装教程在本文就不再讲解了,可以参考我之前写的博客《Docker专栏》。下面来讲解在docker下安装ES。
1.调高JVM线程数限制数量(一定要先设置!)
vim /etc/sysctl.conf # 添加这个 vm.max_map_count=262144 # 保存后执行这个命令 sysctl -p
2.下载ES镜像
docker pull elasticsearch
如果报错如下,参考我的博客解决:https://yanglinwei.blog.csdn.net/article/details/105043400:
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/,可以看到访问成功。
1.1 解决跨域
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: "*"
2.保存退出后,重启容器:
exit docker restart elasticsearch
1.2 安装IK分词器
elasticsearch的版本和ik分词器的版本需要保持一致,不然在重启的时候会失败。ik分词器地址:https://github.com/medcl/elasticsearch-analysis-ik/releases
1.进入容器
docker exec -it elasticsearch /bin/bash
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
3.重启ES
exit docker restart elasticsearch
2.docker下安装Kibana
1.docker 拉取kibana镜像:
docker pull kibana:7.6.1
2.启动kibana
docker run --name kibana --link=elasticsearch:test -p 5601:5601 -d kibana:7.6.1
3.启动耐心等候几分钟,浏览器输入:http://yourip:5601/app/kibana,可以看到Kibana成功启动。
总结
本文主要讲解在Docker下安装ES和Kibana,里面有很多的坑,需要慢慢填。
最后附上几个常用的docker的命令:
查看容器日志:
docker logs -f 容器名
进入容器:
docker exec -it 容器名 /bin/bash
重命名容器:
docker rename 容器名 新容器名
删除容器:
docker rm 容器名
删除镜像:
docker rmi 镜像名