第十三节 使用Docker安装ElasticSearch和Kibana指南

亮子 2021-06-08 06:27:56 25964 1 0 0

1、下载镜像

# https://hub.docker.com/
docker pull elasticsearch:7.2.0

图片alt

图片alt

2、运行镜像

docker run --name elasticsearch -p 9200:9200 -p 9300:9300 -e "discovery.type=single-node" -d elasticsearch:7.2.0

图片alt

3、查看运行

docker ps
docker ps --format "table {{.ID}}\t{{.Names}}\t{{.Status}}\t{{.Ports}}"

图片alt

4、检查安装

curl http://localhost:9200

图片alt

也可以在浏览器中打开,如下图:

图片alt

5、修改配置

1)、解决跨域访问问题

首先进入到容器中,然后进入到指定目录修改elasticsearch.yml文件。

$ 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)、重启容器

修改配置后重启容器即可。

$ docker restart elasticsearch

6、安装ik分词器

es自带的分词器对中文分词不是很友好,所以我们下载开源的IK分词器来解决这个问题。首先进入到plugins目录中下载分词器,下载完成后然后解压,再重启es即可。具体步骤如下:
注意:elasticsearch的版本和ik分词器的版本需要保持一致,不然在重启的时候会失败。可以在这查看所有版本,选择合适自己版本的右键复制链接地址即可。

# ik分词器下载地址
https://github.com/medcl/elasticsearch-analysis-ik/releases

确定ik版本后,执行下列命令安装:

cd /usr/share/elasticsearch/plugins/
elasticsearch-plugin install https://github.com/medcl/elasticsearch-analysis-ik/releases/download/v7.2.0/elasticsearch-analysis-ik-7.2.0.zip
## OR
## elasticsearch-plugin install http://www.52jufu.com/bw/elasticsearch-analysis-ik-7.2.0.zip

exit
docker restart elasticsearch

# 使用crul命令,输入下面的URL地址,验证分词器是否成功。
curl -X GET -H "Content-Type: application/json"  "http://localhost:9200/_analyze?pretty=true" -d'{"text":"中华五千年华夏"}';

curl -X GET -H "Content-Type: application/json"  "http://localhost:9200/_analyze?pretty=true" -d'{"text":"中华五千年华夏","analyzer": "ik_smart"}';

curl -X GET -H "Content-Type: application/json"  "http://localhost:9200/_analyze?pretty=true" -d'{"text":"中华五千年华夏","analyzer": "ik_max_word"}';

图片alt

# 自己搭建web服务器http://192.168.3.6:8000/download/elasticsearch-analysis-ik-7.2.0.zip

图片alt

注意:CentOS安装IK分词器步骤

  • 上传IK分词的压缩包

图片alt

  • 解压IK分词的压缩包
unzip ik.zip

图片alt

  • 把解压后的ik分词的目录拷贝到容器中
# /server/es/ik/ 为ik分词器解压的目录
# es 为容器的名字
# /usr/share/elasticsearch/plugins/ es容器中的目录
docker cp /server/es/ik/ es:/usr/share/elasticsearch/plugins/

图片alt

  • 重启容器
# es 为容器的名字
docker restart es

图片alt

7、kibana安装

1)、下载镜像

$ docker pull kibana:7.2.0

图片alt
图片alt图片alt
图片alt

2)、启动容器

安装完成以后需要启动kibana容器,使用--link连接到elasticsearch容器,命令如下:

docker run --name kibana --link=elasticsearch:test  -p 5601:5601 -d kibana:7.2.0

# 关闭防火墙
# systemctl stop firewalld.service

# 禁止firewall开机启动
# systemctl disable firewalld.service

启动以后可以打开浏览器输入http://localhost:5601就可以打开kibana的界面了。

# 在浏览器中打开http://localhost:5601/app/kibana#/home?_g=()

图片alt

图片alt

注意:如果kibana连接不上es

图片alt

  • 进入到kibana的容器里面

图片alt

  • 进入到config目录并编辑 kibana.yml

图片alt

图片alt

  • 查看容器的日志

图片alt