1.拉取镜像
docker pull elasticsearch:7.5.0
2.配置
mkdir -p /mydata/elasticsearch/config # 用来存放配置文件
mkdir -p /mydata/elasticsearch/data # 数据
echo “http.host: 0.0.0.0” >/mydata/elasticsearch/config/elasticsearch.yml # 允许任何机器访问
chmod -R 777 /mydata/elasticsearch/ ## 设置elasticsearch文件可读写权限
3.运行容器
docker run --name elasticsearch -p 9200:9200 -p 9300:9300
-e “discovery.type=single-node”
-e ES_JAVA_OPTS=“-Xms64m -Xmx512m”
-v /mydata/elasticsearch/config/elasticsearch.yml:/usr/share/elasticsearch/config/elasticsearch.yml
-v /mydata/elasticsearch/data:/usr/share/elasticsearch/data
-v /mydata/elasticsearch/plugins:/usr/share/elasticsearch/plugins
-d elasticsearch:7.5.0
-e ES_JAVA_OPTS=“-Xms64m -Xmx128m” \ 测试环境下,设置 ES 的初始内存和最大内存,否则导致过大启动不了ES
如果出现异常,使用docker logs elasticsearch命令可以查看相应的日志,很大可能是因为某个目录没有权限。
chmod -R 777 /path 递归修改该目录的权限即可。(-R 表示递归path下的所有目录文件,777表示可读可写可执行)
4.安装Kibana
docker run --name kibana -e ELASTICSEARCH_HOSTS=http://192.168.56.10:9200 -p 5601:5601 -d kibana:7.5.0
将host和es版本换成自己的即可。
5.访问http://ip:5601
由于Kibana启动较为慢,所以需要等一会才能成功访问该页面
3.进入容器内部
docker exec -it elasticsearch /bin/bash
4.安装IK分词器
elasticsearch-plugin install https://github.com/medcl/elasticsearch-analysis-ik/releases/download/v7.5.0/elasticsearch-analysis-ik-7.5.0.zip
5.退出容器,重启elasticsearch
docker restart elasticsearch
6.访问http://ip:9200