1、下载镜像

    1. docker pull docker.elastic.co/elasticsearch/elasticsearch:7.6.2

    2、创建目录结构

    1. mkdir -p config data logs plugins/ik

    3、编辑:docker-compose.yml

    1. version: "3"
    2. services:
    3. elasticsearch:
    4. image: docker.elastic.co/elasticsearch/elasticsearch:7.6.2
    5. container_name: "elasticsearch"
    6. ports:
    7. - "9200:9200"
    8. - "9300:9300"
    9. volumes:
    10. - "./data:/usr/share/elasticsearch/data:rw"
    11. - "./config/elasticsearch.yml:/usr/share/elasticsearch/config/elasticsearch.yml"
    12. - "./logs:/user/share/elasticsearch/logs:rw"
    13. - "./plugins/ik:/usr/share/elasticsearch/plugins/ik"

    4、编辑ES配置文件elasticsearch.yml

    1. discovery.type: "single-node"
    2. bootstrap.memory_lock: true
    3. network.host: 0.0.0.0
    4. http.port: 9200
    5. transport.tcp.port: 9300
    6. path.logs: /usr/share/elasticsearch/logs
    7. http.cors.enabled: true
    8. http.cors.allow-origin: "*"
    9. xpack.security.audit.enabled: true

    5、执行命令启动

    1. docker-compose up -d

    注意启动时有可能会出现 “Caused by: java.nio.file.AccessDeniedException: /usr/share/elasticsearch/data/nodes”,
    image.png
    解决办法:是因为对应的文件夹没有相关权限,可以通过

    1. chmod 777 data

    6、安装IK中文分词插件

    点击IK分词插件下载,下载zip压缩文件,解压缩到plugins指定的ik文件夹
    image.png

    OK,单体es搭建完成!

    bin/elasticsearch-plugin install https://github.com/medcl/elasticsearch-analysis-ik/releases/download/v7.6.2/elasticsearch-analysis-ik-7.6.2.zip

    ./bin/elasticsearch-plugin list