使用DockerFile安装ElasticSearch,kiBana以及Ik分词器

一.编写Dockerfile文件构建Es容器

        首先需要通过dockerfile文件创建Es容器,需要有Es的包,去官网上下载对应的包下来,我这里下载的是elasticsearch-7.17.0-linux-x86_64.tar.gz

注:Kibana和Ik分词器版本需要与这里的Es版本一致,不然会出错!!

下载包上传云服务器,开始编写DockerFile文件,如下图:

这里有几个地方需要注意:

        1.Es里自带Jdk,所以无需再自己安装一个Jdk在环境中,如果需要自定义jdk,需要更改Es /config/ 目录下的elasticSearch-env文件,将里面配置修改成自定义的Jdk路径

        2.需要创建linux自己的用户组,因为es不能在root用户下启动,且要对整个elasticsearch-7.17.0目录授权

        3.需要暴露两个端口,一个是集群内布通信端口9300,一个是外部访问端口9200

        4.数据卷映射,可以将实例内部的数据映射到宿主机上进行保存(非必要)

        5.如果需要转成Es集群,可以在启动的实例里更改 /config/elasticsearch.yml文件进行修改

之后就可以通过docker build xxx 把容器创建出来,容器创建出来之后

构建实例命令

docker run -itd -p 9200:9200 -e "ES_JAVA_OPTS=-Xms108m -Xmx108m" -e "discovery.type=single-node" --net="host" --name myes_test myes:1.0

这里也需要注意几个地方:

        1.首先暴露端口由于我只需要外部访问且为单机环境,所以就向外暴露一个端口

        2.-e 设置启动的JVM大小,因为 Xms 属性和 Xmx 属性太小,es启动会出现内存不足的问题

        3.-e 设置discovery.type=single-node,设置成为单机环境

        4. -net="host" 目的为与宿主机同ip,如果不添加此属性会出现宿主机访问实例出现connection reset by peer的问题(推测是由于防火墙等因素导致)

启动之后,curl 127.0.0.1:9200 访问

测试成功。

二.安装Ik分词器

        ik分词器的安装较为简单,只需要去github上下载与es对应的ik分词器版本就行,然后在容器内es的 /plugins/ 目录下创建一个ik文件夹,然后把ik.zip包解压的东西放入这个文件夹里就完成

使用 docker cp 宿主机文件路径 实例Id:实例内es /plugins/ 下文件路径

三.安装KiBana

        安装Kibana使用已经打包好的容器进行安装

        docker pull kibana:7.17.0

        

然后使用命令

docker run -d  --name kibana  --net="host"  -p 5601:5601  -e ELASTICSEARCH_HOSTS=http://127.0.0.1:9200  kibana:7.17.0

将Kibana容器变成实例,访问es的url对es进行操作

且设置为跟host主机一个网段

测试KiBana:

在Kibana导航栏,找到Dev tools就可以操作容器内的es了

Put 索引名

Delete 索引名

简单的一些操作

1.创建索引

2.创建type以及字段属性

3.删除索引

4.向shop类型中放入数据两条

5.获取数据,从索引和Type中指明是在这两个条件下去查询数据

6.查询全部的数据

可以理解为索引像个字典名字,Type类型为哪种类型下,然后字段为关键字,通过关键字找到对应的页数查出数据(个人理解,欢迎指正)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值