使用docker 简单部署 ElasticSearch 以及 ElasticSearch-Head

一、使用docker 简单部署 ElasticSearch

(1)首先要拉取镜像

[root@localhost ~]# docker pull docker.elastic.co/elasticsearch/elasticsearch:6.3.2

如果下载超时,尝试下6.5.0版本

docker pull elasticsearch:6.5.0

 

查看镜像执行docker images

(2)运行容器

ElasticSearch的默认端口是9200,我们把宿主环境9200端口映射到Docker容器中的9200端口,就可以访问到Docker容器中的ElasticSearch服务了,同时我们把这个容器命名为es

[root@localhost ~]# docker run -d --name es -p 9200:9200 -p 9300:9300 -e "discovery.type=single-node" docker.elastic.co/elasticsearch/elasticsearch:6.3.2

(3)配置跨域,不然外界浏览器访问不了。

进入容器

由于要进行配置,因此需要进入容器当中修改相应的配置信息。

[root@localhost ~]# docker exec -it es /bin/bash

然后进入配置文件

[root@b38744e49e25 elasticsearch]# cd config

执行ls 或者 ll查看文件,我们可以看到 elasticsearch.yml 配置文件

然后修改elasticsearch.yml 文件

[root@b38744e49e25 config]# vi elasticsearch.yml
# 加入跨域配置
http.cors.enabled: true
http.cors.allow-origin: "*"

最后重启容器

由于修改了配置,因此需要重启ElasticSearch容器。

首先退出容器或者重新开发窗口再重启ES

[root@localhost ~]# docker restart es

浏览器访问如下:

ip+端口(9200)

 二、Docker 部署 ElasticSearch-Head

(1)拉取镜像

[root@localhost ~]# docker pull mobz/elasticsearch-head:5

(2)运行容器

[root@localhost ~]# docker run -d --name es_admin -p 9100:9100 mobz/elasticsearch-head:5

ElasticSearch的默认端口是9200,我们把宿主环境9200端口映射到Docker容器中的9200端口,就可以访问到Docker容器中的ElasticSearch服务了,同时我们把这个容器命名为es

浏览器访问如下:

ip+端口(9100)

添加索引库ES

[root@service ~]# curl -XPUT http://192.168.231.130:9200/es/

添加数据

[root@service ~]# curl -H "Content-Type: application/json" -XPOST http://localhost:9200/es/employee -d '{"first_name" : "bin","last_name" : "tang","age" : 33,"about" : "I love to go rock climbing","interests": [ "sports", "music"]}'

浏览器查询数据是否成功

这样,我们就完成了用Docker提供Elasticsearch服务,如果想同时启动多个不同版本的Elastcsearch或者其他服务,Docker也是一个理想的解决方案。

三、ik的部署

进入容器(es为容器的名称,也可以跟你id进入)

[root@service ~]# docker exec -it es /bin/bash

 

注意:es跟ik的版本要一致

./bin/elasticsearch-plugin install https://github.com/medcl/elasticsearch-analysis-ik/releases/download/v6.5.0/elasticsearch-analysis-ik-6.5.0.zip

接着进入到 plugins 目录可以看到IK分词器已经安装成功

cd plugins/

接着退出容器并重启容器

exit
docker restart 容器名

ok 部署ik完成。

四、kibana的部署

使用docker拉取kibana镜像

[root@service ~]# docker pull kibana:6.5.0

查看镜像

[root@service ~]# docker images

运行镜像

[root@service ~]# sudo docker run --name mykibana -e ELASTICSEARCH_URL=http://192.168.231.130:9200 -p 5601:5601 -d kibana

查看运行中的镜像

[root@service ~]# docker ps

随后打开 http://服务ip:5061/ ,可以看到kibana界面。

原文地址:https://www.cnblogs.com/ckfeng/p/13630839.html