Docker安装elasticsearch7.17.10
一、下载docker
#拉取镜像
docker pull elasticsearch:7.17.10
#启动镜像
docker run --name elasticsearch -d -e ES_JAVA_OPTS="-Xms512m -Xmx512m" -e "discovery.type=single-node" -p 9200:9200 -p 9300:9300 elasticsearch:7.17.10
参数说明
--name表示镜像启动后的容器名称
-d: 后台运行容器,并返回容器ID;
-e: 指定容器内的环境变量
-p: 指定端口映射,格式为:主机(宿主)端口:容器端口
二、查看是否在docker中安装并启动成功
这样说明安装并启动成功
三、测试是否能够正常访问
浏览器访问ip:9200 如果出现以下界面就是安装成功
五、安装elasticsearch-head
elasticsearch-head安装
docker run -d --name elasticsearch-head -p 9100:9100 mobz/elasticsearch-head:5
六、如果不能够正常访问Es,则用以下解决方案
问题原因:尝试连接easticsearch会发现无法连接上,由于是前后端分离开发,所以会存在跨域问题,需要在服务端做CORS的配置
步骤一:修改docker中elasticsearch的elasticsearch.yml文件
docker exec -it elasticsearch /bin/bash (进不去使用容器id进入)
vi config/elasticsearch.yml
步骤二:在最下面添加2行
http.cors.enabled: true
http.cors.allow-origin: "*"
步骤三:退出并重启服务
exit
docker restart 容器id
至此就大功告成了
七、安装IK中文分词器
这里采用离线安装
选择Es版本相应的分词版本
#将压缩包移动到容器中
docker cp /tmp/elasticsearch-analysis-ik-7.17.10.zip elasticsearch:/usr/share/elasticsearch/plugins
#进入容器
docker exec -it elasticsearch /bin/bash
#创建目录
mkdir /usr/share/elasticsearch/plugins/ik
#将文件压缩包移动到ik中
mv /usr/share/elasticsearch/plugins/elasticsearch-analysis-ik-7.17.10.zip /usr/share/elasticsearch/plugins/ik
#进入目录
cd /usr/share/elasticsearch/plugins/ik
#解压
unzip elasticsearch-analysis-ik-7.17.10.zip
#删除压缩包
rm -rf elasticsearch-analysis-ik-7.17.10.zip
退出并重启镜像