由于笔者最近在学习docker容器,所以全程用docker的方式来搭建ES环境
1、安装ES,Kibana以及Ik分词工具和ES-Head可视化插件
docker-compose.yml配置文件如下:
version: '3.3'
services:
elasticsearch:
image: elasticsearch:6.4.0
container_name: elasticsearch
restart: always
ports:
- 9200:9200
- 9300:9300
environment:
discovery.type: single-node
volumes:
#容器卷,将Es的配置文件、数据文件和插件配置和宿主机映射
- ./config/elasticsearch.yml:/usr/share/elasticsearch/config/elasticsearch.yml
- ./plugins:/usr/share/elasticsearch/plugins
- ./data:/usr/share/elasticsearch/data
kibana:
image: kibana:6.4.0
container_name: kibana
ports:
- 5601:5601
environment:
- ELASTICSEARCH_URL=http://192.168.152.131:9200
restart: always
head: #可视化插件
image: mobz/elasticsearch-head:5
restart: always
container_name: es_head
ports:
- 9100:9100
其中IK分词器在github上面下载并且解压放入plugins容器卷文件夹中即可,随后使用docker-compose up -d启动即可
查看Es是否启动成功,浏览器访问http://ip:9200出现以下Json串即可
{
"name": "u8Pn7I5",
"cluster_name": "docker-cluster",
"cluster_uuid": "SPZQ2gE8QraE4qCK2zzJtA",
"version": {
"number": "6.4.0",
"build_flavor": "default",
"build_type": "tar",
"build_hash": "595516e",
"build_date": "2018-08-17T23:18:47.308994Z",
"build_snapshot": false,
"lucene_version": "7.4.0",
"minimum_wire_compatibility_version": "5.6.0",
"minimum_index_compatibility_version": "5.0.0"
},
"tagline": "You Know, for Search"
}
在使用Head的时候可能会产生跨域,所以在容器卷的config目录下的elasticsearch.yml中添加下面配置
http.cors.enabled: true
http.cors.allow-origin: "*"
访问9100端口可看到Head页面
微信截图_20190609192406.png
IK分词器查看效果,这里使用kibana控制台来测试效果
微信截图_20190609192751.png















网友评论