目录
1.安装docker
Windows Docker 安装_全栈编程网的博客-CSDN博客
2.安装 ElasticSearch
2.1拉取ElasticSearch镜像
docker pull elasticsearch:7.4.0
2.2 运行
docker run --name elasticsearch -d -e ES_JAVA_OPTS="-Xms512m -Xmx512m" -e "discovery.type=single-node" -p 9200:9200 -p 9300:9300 elasticsearch:7.4.0
2.3 验证
返回如下内容表示安装启动成功
{
"name" : "75f559dd4228",
"cluster_name" : "docker-cluster",
"cluster_uuid" : "poRCOHJ4SW6FmQhITl9MHA",
"version" : {
"number" : "7.4.0",
"build_flavor" : "default",
"build_type" : "docker",
"build_hash" : "22e1767283e61a198cb4db791ea66e3f11ab9910",
"build_date" : "2019-09-27T08:36:48.569419Z",
"build_snapshot" : false,
"lucene_version" : "8.2.0",
"minimum_wire_compatibility_version" : "6.8.0",
"minimum_index_compatibility_version" : "6.0.0-beta1"
},
"tagline" : "You Know, for Search"
}
3.安装es-head可视化插件
3.1 拉取镜像
docker pull mobz/elasticsearch-head:5
3.2 启动
docker run -d --name elasticsearch-head -p 9100:9100 mobz/elasticsearch-head:5
3.3 验证
访问:
http://localhost:9100/
3.4 解决es-head页面问题
- es-head 可视化页面访问接口包cors问题
解决方案:修改docker中elasticsearch的elasticsearch.yml文件
进入ElasticSearch容器:
docker exec -it elasticsearch /bin/bash
修改elasticsearch.yml文件
vi config/elasticsearch.yml
加上两行:
http.cors.enabled: true
http.cors.allow-origin: "*"
重启ElasticSearch 容器后,
docker restart elasticsearch的容器ID
es-head页面就可以访问连接了
- 406错误码
解决方案:
1.复制vendor.js到本地
docker cp es-head容器的ID:usr/src/app/_site/vendor.js F:/
2.修改vendor.js文件
以上截图中位置修改如下内容
application/x-www-form-urlencoded
修改为
application/json;charset=UTF-8
3.复制vendor.js 回容器
docker cp F:/vendor.js es-head容器ID:usr/src/app/_site/
4.重启es-head容器
docker restart es-head的容器ID
操作成功,不在报406错误
4. 安装kibana
4.1 拉去镜像
docker pull kibana:7.4.0
4.2 启动
docker run -d --name kibana -p 5601:5601 kibana:7.4.0
返回:Kibana server is not ready yet ,翻译:Kibana服务器尚未就绪
4.3 修改配置,让Kibana启动成功
进入kibana容器
docker exec -it kibana /bin/bash
打开config/kibana.yml 文件,如下修改为es地址,容器可以写宿主机也就是你本机的IP地址。
4.4 验证
启动Kibana成功
5. 安装ik分词器插件
安装ik分词器要注意和ElasticSearch版本相适应,这里ElasticSearch版本是7.4.0,选用ik分词器依然是 7.4.0
5.1 进入ElasticSearch容器
docker exec -it elasticsearch /bin/bash
5.2 运行安装ik分词器插件命令
./bin/elasticsearch-plugin install https://github.com/medcl/elasticsearch-analysis-ik/releases/download/v7.4.0/elasticsearch-analysis-ik-7.4.0.zip
如下图安装完成
5.3 重启生效
自己创建一个索引hello,mapping里面content字段为分词器类型指定为:ik_max_word,创建成功后,查询结果如下:
{
"hello":{
"aliases":{
},
"mappings":{
"properties":{
"_class":{
"type":"keyword",
"index":false,
"doc_values":false
},
"content":{
"type":"text",
"analyzer":"ik_max_word"
},
"firstCode":{
"type":"keyword"
},
"secordCode":{
"type":"keyword"
},
"type":{
"type":"integer"
}
}
},
"settings":{
"index":{
"refresh_interval":"1s",
"number_of_shards":"1",
"provided_name":"hello",
"creation_date":"1657701767667",
"store":{
"type":"fs"
},
"number_of_replicas":"1",
"uuid":"F6QnuExkSrKHcF_8NXcBtQ",
"version":{
"created":"7040099"
}
}
}
}
}