Docker-使用docker-compose安装Elasticsearch和Kibana

    背景:要学习Elasticsearch,所以首先要安装一下。

    环境准备: Centos7Elasticsearch6.5.4Kibana6.5.4docker-compose(默认你的环境已经安装好了dockerdocker-compose)

1、新建一个目录 mkdir /opt/docker-es,然后创建一个文件 vim docker-compose.yml,编辑完内容之后一定记得要赋执行权限 chmod u+x docker-compose.yml

文件内容中的 image 的地址值是哪里来的呢?访问 https://hub.daocloud.io/ ,首页搜索 elasticsearch ,选择 "社区镜像", 找到 "library/elasticsearch" ,选择对应的版本拉取,就能拿到地址,kibana也是同样的方式。

version: "3.1"
services:
  elasticsearch:
    image: daocloud.io/library/elasticsearch:6.5.4
    restart: always
    container_name: elasticsearch
    ports:
      - 9200:9200 # 端口映射
  kibana:
    image: daocloud.io/library/kibana:6.5.4
    restart: always
    container_name: kibana
    ports:
      - 5601:5601
    environment:
      - elasticsearch_url=http://192.168.x.x:9200 #配置你的ip地址
    depends_on:
      - elasticsearch

2、/opt/docker-es 目录下,运行命令 docker-compose up -d 然后就开始拉取镜像并启动对应的容器了。

我遇到了问题,使用 docker-compose logs -f 看日志,发现elasticsearch启动报错: ERROR: [1] bootstrap checks failed [1]: max virtual memory areas vm.max_map_count [65530] is too low, increase to at least [262144]

查了一下参考的博客,说是要修改一个操作系统的文件 vim /etc/sysctl.conf。添加一行 vm.max_map_count=655360,然后重启容器 docker restart 容器id。然后浏览器访问:

http://192.168.x.x:9200 ,出现一段json就证明es启动成功了。

3、安装ik分词器。因为es自带的分词器对中文分词不友好,所以我们安装一个ik分词器。首先找到ik分词器。版本必须和安装的elasticsearch一致6.5.4。到github中输入ik

 

第一个medcl/elasticsearch-analysis-ik 就是

选择Releases

 

选择Tags标签

 

找到6.5.4版本,然后复制连接

 

 4、上一步找到ik分词器的下载地址后,开始安装。

4.1  docker exec -it 容器id /bin/bash 进入到elasticsearch容器

4.2 进入到bin目录 cd bin/

4.3 运行命令  ./elasticsearch-plugin install https://github.com/medcl/elasticsearch-analysis-ik/releases/download/v6.5.4/elasticsearch-analysis-ik-6.5.4.zip 

4.4 安装结束后重启es的docker容器,docker restart 容器id

4.5到kibana界面测试一下

 

参考:

https://cloud.tencent.com/developer/article/1549867

posted @ 2022-04-10 19:19  寻找风口的猪  阅读(1304)  评论(0编辑  收藏  举报