docker安装elasticsearch
#拉取镜像
docker pull elasticsearch:6.5.4
# 启动镜像
docker run --name elasticsearch -d -e ES_JAVA_OPTS="-Xms512m -Xmx512m" -p 9200:9200 -p 9300:9300 elasticsearch:6.5.4
--name表示镜像启动后的容器名称
-d: 后台运行容器,并返回容器ID;
-e: 指定容器内的环境变量
-p: 指定端口映射,格式为:主机(宿主)端口:容器端口
这样docker就完成安装elasticsearch!
elasticsearch错误
但是我服务器elasticsearch在昨天突然挂掉了,启动时报错
ERROR: [1] bootstrap checks failed
[1]: max virtual memory areas vm.max_map_count [65530] is too low, increase to at least [262144]
解决办法
切换到root用户修改sysctl.conf文件
vi /etc/sysctl.conf
#添加配置
vm.max_map_count=655360
#保存退出
:wq
#执行命令
sysctl -p
docker安装elasticsearch-head
#拉取镜像
docker pull mobz/elasticsearch-head:5
#创建容器
docker create --name elasticsearch-head -p 9100:9100 mobz/elasticsearch-head:5#启动容器
docker start elasticsearch-heador
docker start 容器id (docker ps -a 查看容器id )
浏览器打开: http://IP:9100
尝试连接elaseticsearch会发现无法连接上,由于是前后端分离开发,所以会存在跨域问题,需要在服务端做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分词器
给大家个建议,这玩意装与不装都挺好,不装查到的东西也很精确够使,装上会查出一些没有用的!而且特别占内存!
这里采用离线安装
下载分词器压缩包
下载地址:
https://github.com/medcl/elasticsearch-analysis-ik/releases/download/v6.5.4/elasticsearch-analysis-ik-6.5.4.zip
将IK分词器上传到/tmp目录中(xftp)
将分词器安装进容器中
#将压缩包移动到容器中是
docker cp /tmp/elasticsearch-analysis-ik-6.5.4.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-6.5.4.zip /usr/share/elasticsearch/plugins/ik
#进入目录
cd /usr/share/elasticsearch/plugins/ik
#解压
unzip elasticsearch-analysis-ik-6.5.4.zip
#删除压缩包
rm -rf elasticsearch-analysis-ik-6.5.4.zip
退出并重启镜像
加入我们
如果有需要,欢迎可以加入我们的QQ群!(QQ搜索 1074281704, 加入我们的QQ群吧!)
有任何问题,也可以加入我们的QQ群,欢迎交(che)流(dan)!