Index / ElasticSearch

Docker 中运行 ElasticSearch 和 Kibana

原文:https://ichochy.com/posts/elasticsearch/20191107.html

ElasticSearch 是一个基于Lucene的搜索服务器。它提供了一个分布式多用户能力的全文搜索引擎,基于RESTful web接口;Kibana 是一个开源的分析和可视化平台,可以搜索,查看、分析存储在Elasticsearch索引中的数据

一、下载镜像(image)

搜索镜像(image)

docker search elasticsearch
docker search kibana 

获取镜像(image)

docker pull elasticsearch:7.4.1     #镜像名称:Tag
docker pull kibana:7.4.1            #镜像名称:Tag

二、创建 docker-compose.yml

构建 es.yml

version: "3.2"
  
services:
  elasticsearch:
    container_name: elasticsearch           #容器名称
    image: elasticsearch:7.4.1              #镜像(image)
    restart: always                         #重启方式
    environment:
      discovery.type: single-node           #环境变量:运行模式 单例
    ports:
      - "9200:9200"                         #端口映射
      - "9300:9300"
  kibana:
    container_name: kibana                  #容器名称
    image: kibana:7.4.1                     #镜像(image)
    restart: always                         #重启方式
    environment:
      ELASTICSEARCH_URL: "127.0.0.1:9200"   #环境变量:elasticsearch 请求地址
      I18N_LOCALE: "zh-CN"                  #指定中文
    ports:
      - "5601:5601"                         #端口映射

三、运行

命令启动

docker-compose -f es.yml up -d
docker-compose 
                -f  #指定构建文件
                up  #创建并启动容器
                -d  #后台运行容器(container),打印容器(container)ID

启动完成后直接访问:http://127.0.0.1:5601,进入 Kibana

15731085378080282

*注:*注意YML文件编写,不要出现 Tab 制表符,否则导致文件解析错误,启动容器(container)失败

# 错误信息
yaml.scanner.ScannerError: mapping values are not allowed here