1:使用docker拉取Elasticsearch镜像
docker pull elasticsearch:7.12.0(不加版本号默认是最新版本)
2:查看是否成功下载镜像
docker images
3:创建elasticsearch映射本地文件
mkdir -p /root/es/data /root/es/conf
因为是把elasticsearch配置文件映射到本地所以要放开文件夹读写权限,不然启动会报没有权限的错误
chmod 777 /root/es/data
4:创建elasticsearch配置文件
touch /root/es/conf/elasticsearch.yml
5:编辑配置文件,将如下配置粘贴
vim /root/es/conf/elasticsearch.yml
cluster.name: elasticsearch-cluster
node.name: elasticsearch-node
network.host: 0.0.0.0
network.bind_host: 0.0.0.0
network.publish_host: 服务器IP
http.port: 9200
transport.tcp.port: 9300
http.cors.enabled: true
http.cors.allow-origin: "*"
node.master: true
node.data: true
discovery.zen.ping.unicast.hosts: ["服务器IP:9300"]
discovery.zen.minimum_master_nodes: 1
transport.host: 0.0.0.0
6:修改JVM线程数量限制,将如下配置粘贴
vim /etc/sysctl.conf
vm.max_map_count=262144
7:启动配置
sysctl -p
8:启动elasticsearch
docker run -e "discovery.type=single-node" -e ES_JAVA_OPTS="-Xms1024m -Xmx1024m" -p 9200:9200 -p 9300:9300 --name elasticsearch -v /root/es/conf/elasticsearch.yml:/usr/share/elasticsearch/elasticsearch.yml -v /root/es/data:/usr/share/elasticsearch/data -d elasticsearch:7.12.0
(参数解释:
-p 将容器的端口映射到本机的端口
-v 将主机目录挂载到容器的目录
-e 设置参数 ES_JAVA_OPTS 堆内存大小,具体根据服务器配置而定
-d 后台运行容器,也可以使用镜像id
-e "discovery.type=single-node" 单例模式
)
9:查看是否成功启动elasticsearch
docker ps
也可以用 docker logs ee0ea085e81f (容器ID或名字)查看运行日志
10:安装kibana(对应elasticsearch版本即可)
docker pull kibana:7.12.0
11:启动kibana容器
docker run -p 5601:5601 --name kibana -e ELASTICSEARCH_HOSTS=http://es的IP:9200 -d kibana:7.12.0
启动成功后 服务器ip:5601即可
12:安装ik分词器(一定要对应elasticsearch版本)
docker exec -it ee0ea085e81f /bin/bash(进入elasticsearch终端)
13:下载ik分词器
cd plugins(进入elasticsearch插件目录)
elasticsearch-plugin install https://github.com/medcl/elasticsearch-analysis-ik/releases/download/v7.12.0/elasticsearch-analysis-ik-7.12.0.zip
此处提示需要权限直接输入y继续安装即可,安装完成重启elasticsearch容器 docker restart elasticsearch
14:访问kibana测试ik分词器是否成功安装