docker run -di --name=tensquare_es -p 9200: -p 9300:9300 elasticsearch:5.6.8

创建elasticsearch容器(如果版本不是最新的需要在后面加上版本号)

直接浏览器访问创建对应的索引库(这里使用postman)

search模块对应application.yml文件设置

添加之后9200可用,9300不可用,下面让虚拟机上面的9300端口可用

docker exec  -it tensquare_es /bin/bash

将里面的elasticsearch.yml文件复制到容器外面的/usr/share文件夹下(复制的时候注意需要启动容器)

docker cp tensquare_es:/usr/share/elasticsearch/config/elasticsearch.yml /usr/share/elasticsearch.yml

删除之前的容器,创建新的容器

docker rm tensquare_es

docker run -di --name=tensquare_es -p 9200:9200 -p9300:9300 -v /usr/share/elasticsearch.yml:/usr/share/elasticsearch/config/elasticsearch.yml  elasticsearch:5.6.8

后面带有颜色的表示,不使用冒号后面容器中的配置文件,使用前面指定的文件,这样做好像因为容器相当于一台电脑,但是里面没有vi编辑器,不能直接修改

修改复制好的elasticsearch.yml文件,删除transport.host: 0.0.0.0所在行的注释(去掉最前面的#),表示允许所有的主机访问,

同样的文件中 添加对应的跨域修改内容,之后重启docker,容器可以使用,添加下面的内容是为了后面的header的使用

http.cors.enabled: true
http.cors.allow.origin: "*"

修改后的elasticsearch.yml文件内容

同时需要放开更多的资源(docker的要求,因为这时候允许所有IP都可以访问了,所以需要更多的资源),否则容器启动不久就会挂掉,

解决办法,修改/etc/security/limits.conf在文件里追加下面内容(可以一上来就修改这个文件)

* soft nofile 65536
* hard nofile 65536

nofile 单个进程允许打开的最大文件个数 soft是软限制,hard是硬限制

修改后

在/etc/sysctl.conf文件中追加

vm.max_map_count=655360

表示限制一个进程最大能拥有虚拟内存的数量。

修改后

到现在为止,可以使用进行英文的分词

ik分词器插件的安装

直接将分词器目录拷贝到 容器所在目录的/bin/bash/plugins

Alt+p打开SecureCRT的传输界面,使用下面命令传输ik文件夹

sftp> put ‐r d:\setup\ik

z在ik所在的文件夹下,拷贝到上面所说的插件目录

docker cp ik tensquare_es:/usr/share/elasticsearch/plugins

重启tensquare_es,测试,可以实现中文的分词,否则只能实现英文的分词

header 安装(方便管理elasticsearch)

docker run -di --name=tensquare_header -p 9100:9100  mobz/elasticsearch-head:5

注意跨域的问题

浏览器访问相应的端口号,连接对应端口的elasticsearch

上面的索引库是之前使用postman访问的时候就创建的创建的。

elasticsearch注意事项,

使用Java开发的时候使用9300接口,其他的使用9200端口

docker上安装elasticsearch和ik分词器插件和header,实现分词功能的更多相关文章

  1. Docker下安装Elasticsearch、ik分词器、kibana

    1:使用docker拉取Elasticsearch镜像 docker pull elasticsearch:7.12.0(不加版本号默认是最新版本) 2:查看是否成功下载镜像 docker image ...

  2. Linux下,非Docker启动Elasticsearch 6.3.0,安装ik分词器插件,以及使用Kibana测试Elasticsearch,

    Linux下,非Docker启动Elasticsearch 6.3.0 查看java版本,需要1.8版本 java -version yum -y install java 创建用户,因为elasti ...

  3. 搜索引擎ElasticSearch系列(五): ElasticSearch2.4.4 IK中文分词器插件安装

    一:IK分词器简介  IK Analyzer是一个开源的,基于java语言开发的轻量级的中文分词工具包.从2006年12月推出1.0版开始, IKAnalyzer已经推出了4个大版本.最初,它是以开源 ...

  4. 【自定义IK词典】Elasticsearch之中文分词器插件es-ik的自定义词库

    Elasticsearch之中文分词器插件es-ik 针对一些特殊的词语在分词的时候也需要能够识别 有人会问,那么,例如: 如果我想根据自己的本家姓氏来查询,如zhouls,姓氏“周”.      如 ...

  5. elasticsearch安装中文分词器插件smartcn

    原文:http://blog.java1234.com/blog/articles/373.html elasticsearch安装中文分词器插件smartcn elasticsearch默认分词器比 ...

  6. es-07-head插件-ik分词器插件

    5.x以后, es对head插件的支持并不是特别好 而且kibana的功能越来越强大, 建议使用kibana 1, head插件安装 在一台机器上安装head插件就可以了 1), 更新,安装依赖 su ...

  7. Elasticsearch之中文分词器插件es-ik(博主推荐)

    前提 什么是倒排索引? Elasticsearch之分词器的作用 Elasticsearch之分词器的工作流程 Elasticsearch之停用词 Elasticsearch之中文分词器 Elasti ...

  8. Elasticsearch之中文分词器插件es-ik的自定义热更新词库

    不多说,直接上干货! 欢迎大家,关注微信扫码并加入我的4个微信公众号:   大数据躺过的坑      Java从入门到架构师      人工智能躺过的坑         Java全栈大联盟       ...

  9. IK分词器插件elasticsearch-analysis-ik 6.1.1

    http://88250.b3log.org/full-text-search-elasticsearch#b3_solo_h3_0 IK分词器插件 (1)源码 https://github.com/ ...

随机推荐

  1. Angular + Websocket

    Angular使用RxJS,它本质上是一个反应式扩展的javascript实现.这是一个使用可观察序列组成异步和基于事件的程序的库,非常适合使用WebSockets. 简而言之,RxJS允许我们从we ...

  2. Python生成器(generator)和迭代器(Iterator)

    列表生成式 a = [i+1 for i in range(10)] print(a) [1, 2, 3, 4, 5, 6, 7, 8, 9, 10] 这就是列表生成式 生成器(generator) ...

  3. ubuntu拒绝root用户ssh远程登录解决办法

    ubuntu拒绝root ssh远程登录通常情况是ssh设置了禁止root远程登录,解决办法就是:修改ssh配置,然后重启ssh服务即可. vi /etc/ssh/sshd_config 找到并用#注 ...

  4. keepalived 高可用配置

    下载地址:http://www.keepalived.org/software/keepalived-1.2.12.tar.gzht 安装方法:1. ./configure 可能出现的错误 !!! O ...

  5. 解压zipfile & tarfile

    def __un_zip(self, file_path): """解压.zip格式文件到同名目录下,若解压之前就存在该目录说明已解压,跳过解压过程,返回该目录" ...

  6. DotNetBar中Supergrid显示树形数据

    1.向窗体中拖一个Supergrid控件 2.添加列ID,NAME,MATH,CN,SEX 3.在任务窗格中勾选“Show Tree Lines”和“Show Tree Buttons” 4.添加数据 ...

  7. 【剑指offer】数组中只出现一次的数字

    题目:一个整型数组里除了两个数字之外,其他的数字都出现了偶数次.请写程序找出这两个只出现一次的数字. 思路1:使用HashMap存上所有的数字,数字作为Key,Value为对应的出现次数.这种做法可以 ...

  8. Ubuntu 16.04 安装Mysql数据库

    系统环境 Ubuntu 16.04; 安装步骤 1.通过以下环境安装mysql服务端与客户端软件 sudo apt-get install mysql-server apt-get isntall m ...

  9. ORM的多表查询详述

    ORM的多表查询 ORM最核心与用的最多的地方就是跨表查询了.这里的"跨表查询"分为以下几种:基于对象的跨表查询.基于双下划线的跨表查询.聚合查询.F与Q查询以及分组查询. 下面就 ...

  10. asp.net web api 权限验证的方法

    思路:客户端使用header或者form讲验证信息传入api,在权限验证过滤中进行处理,代码示例: 定义过滤器 public class ApiFilter1 : System.Web.Http.Au ...