一、安装Es单机版
docker pull elasticsearch:7.8.0
先配置宿主机的 参数,否则无法启动,会报错
vim /etc/security/limits.conf
#加入如下内容
* soft nofile 65536
* hard nofile 131072
* soft nproc 2048
* hard nproc 4096
vim /etc/sysctl.conf
#加入如下内容
vm.max_map_count=655360
刷新配置文件sysctl -p /etc/sysctl.conf/
启动简洁版:目的复制配置文件到主机
docker run -id \
--restart=always \
--name=elasticsearch7.8.0 \
-p 9200:9200 \
-p 9300:9300 \
-v /etc/localtime:/etc/localtime \
-e "discovery.type=single-node" \
-e TZ='Asia/Shanghai' \
-e LANG="en_US.UTF-8" \
elasticsearch:7.8.0
复制文件到主机
docker cp 97d21381af5a4e49e:/usr/share/elasticsearch/config/ /home/elasticsearch/
docker cp 97d21381af5a4e49e:/usr/share/elasticsearch/data/ /home/elasticsearch/
docker cp 97d21381af5a4e49e:/usr/share/elasticsearch/logs/ /home/elasticsearch/
docker cp 97d21381af5a4e49e:/usr/share/elasticsearch/plugins/ /home/elasticsearch/
启动 elasticsearch 容器
docker run \
-id \
--restart always \
--name elasticsearch7.8 \
--privileged=true \
-p 9200:9200 \
-p 9300:9300 \
-v /home/elasticsearch/config/:/usr/share/elasticsearch/config \
-v /home/elasticsearch/data/:/usr/share/elasticsearch/data \
-v /home/elasticsearch/logs/:/usr/share/elasticsearch/logs \
-v /home/elasticsearch/plugins/:/usr/share/elasticsearch/plugins \
-v /etc/localtime:/etc/localtime \
-e "discovery.type=single-node" \
-e ES_JAVA_OPTS="-Xms512m -Xmx512m" \
-e TZ='Asia/Shanghai' \
-e LANG="en_US.UTF-8" elasticsearch:7.8.0
安装可视化客户端kibana
拉取镜像-- kibana版本必须和elasticsearch版本保持一致
docker pull kibana:7.8.0
启动容器--YOUR_ELASTICSEARCH_CONTAINER_NAME_OR_ID 正在运行的ES容器ID或name
docker run --link YOUR_ELASTICSEARCH_CONTAINER_NAME_OR_ID:elasticsearch -p 5601:5601 {docker-repo}:{version}
docker run --link es7.8:elasticsearch -p 5601:5601 -d kibana:7.8.0
docker run --link es7.8:elasticsearch -p 5601:5601 -d kibana:7.8.0
docker run --name kibana -e ELASTICSEARCH_HOSTS=http://119.28.177.178:9200 -p 5601:5601 -d kibana:7.8.0
二、安装IK分词器
Ik分词器版本要和ES和Kibana版本保持一致
1.进入容器
docker exec -it elasticsearch /bin/bash
2.此命令需要在容器中运行
elasticsearch-plugin install https://github.com/medcl/elasticsearch-analysis-ik/releases/download/v7.8.0/elasticsearch-analysis-ik-7.8.0.zip
3.退出容器,重启容器
docker restart elasticsearch
ik_smart 智能分词,最少切分,宁缺毋滥,保证查准率
ik_max_word 最大化分词法,最细粒度划分,尽量多的有意义的分词,保证查全率
ik_max_word 分词 包含 ik_smart
三、安装head
下载elasticsearch-head镜像
docker pull mobz/elasticsearch-head:5-alpine
运行命令
docker run -dit --restart=always --name=elasticsearch-head -p 19100:9100 -v /etc/localtime:/etc/localtime -e TZ='Asia/Shanghai' -e LANG="en_US.UTF-8" mobz/elasticsearch-head:5-alpine
跨域问题:
在elasticsearch.yml添加
http.cors.enabled: true
http.cors.allow-origin: "*"