Docker 安装最新版本 elasticSearch 8.13.x

分类:ELK |

 Docker 安装最新版本 elasticSearch 8.13.x


version: '2.2'
services:
  es01:
    image: docker.elastic.co/elasticsearch/elasticsearch:8.13.4
    platform: linux/arm64
    container_name: es01
    environment:
      - node.name=es01
      - "ES_JAVA_OPTS=-Xms512m -Xmx512m"
    ulimits:
      memlock:
        soft: -1
        hard: -1
    mem_limit: 1G  # 设置最大内存限制为1G
    volumes:
      - data01:/usr/share/elasticsearch/data
    ports:
      - 9200:9200
    networks:
      - elastic

  kib01:
    image: docker.elastic.co/kibana/kibana:8.13.4
    platform: linux/arm64
    container_name: kib01
    environment:
      - node.name=kib01
      - "ES_JAVA_OPTS=-Xms512m -Xmx512m"
    ulimits:
      memlock:
        soft: -1
        hard: -1
    mem_limit: 1G
    volumes:
      - kib01:/usr/share/kibana/data
    ports:
      - 5601:5601
    networks:
      - elastic

volumes:
  data01:
    driver: local
  kib01:
    driver: local

networks:
  elastic:
    driver: bridge


执行:  docker-compose up -d   创建docker容器


1. 修改kibana为中文版本: 

    下载 kibana.yml 修改 将 i18n.locale 的值设置为 "zh-CN",以启用中文界面。配置项应该如下所示:

image.png

    a. 从容器中复制kibana.yml 文件

        docker cp kib01:/usr/share/kibana/config/kibana.yml .

    b. 修改配置文件: 

        vim kibana.yml

        添加 i18n.locale: "zh-CN"

    c. 上传配置文件: 

        docker cp kibana.yml kib01:/usr/share/kibana/config/kibana.yml

    d. docker restart kib01

    image.png


3. 访问 http://127.0.0.1:5601/ 

a. 获取token: 

docker exec -it es01 /usr/share/elasticsearch/bin/elasticsearch-create-enrollment-token -s kibana

image.png


image.png

b. 取得验证码:

docker exec -it kib01 /usr/share/kibana/bin/kibana-verification-code


image.png

image.png

b. 重置密码: 

docker exec -it es01 /usr/share/elasticsearch/bin/elasticsearch-reset-password -u elastic

image.png

用户名: elastic

密码即: -CA9nKoMmYxfhPPDY_5S



    

3. 命令行访问 9200: 

    a. 复制证书文件: 

    docker cp es01:/usr/share/elasticsearch/config/certs/http_ca.crt .

    b. 使用证书文件访问: 

    curl --cacert http_ca.crt -u elastic:$ELASTIC_PASSWORD https://localhost:9200


一切就绪: 

image.png



4. 安装 elasticsearch-head 

elasticsearch-head 插件下载地址:https://github.com/mobz/elasticsearch-head/


解决跨域问题:

打开ElasticSearch文件的config目录下的 elasticsearch.yml 配置文件:

添加如下配置后保存:

#开启跨域支持

http.cors.enabled: true

#允许所有人跨域访问

http.cors.allow-origin: "*"


访问时需要密码的话: 

https://es01.elk.orb.local:9200/?auth_user=xxx&auth_password=xxx

image.png


5. 安装中文分词插件:

https://github.com/infinilabs/analysis-ik


请使用对应elastic-search的分词版本: https://release.infinilabs.com/analysis-ik/stable/

下载zip包以后, 解压出文件夹 elasticsearch-analysis-ik-8.13.4, 重命名 ik 后, 将ik文件夹复制到 /usr/share/elasticsearch/plugins 文件夹下, 

不然的话启动时提示以下错误信息: 

Plugin [elasticsearch-analysis-ik-8.13.4] is missing a descriptor properties file