docker 安装elasticsearch详细步骤,并开启外网访问,安装ik分词器,header插件
一 拉取镜像、映射文件并启动elasticsearch步骤一:拉取elasticsearch,这里使用的版本是5.6.8docker pull elasticsearch:5.6.8拉取镜像成功以后会显示2.拷贝配置文件elasticsearch.yml(网上很多)到服务器/usr/share/elasticsearch.yml目录下3.创建容器并启动docke...
一 拉取镜像、映射文件并启动elasticsearch
步骤一:拉取elasticsearch,这里使用的版本是5.6.8
docker pull elasticsearch:5.6.8
拉取镜像成功以后会显示
2.拷贝配置文件elasticsearch.yml(网上很多)到服务器/usr/share/elasticsearch.yml目录下
3.创建容器并启动
docker run -d --name elasticsearch -p 9200:9200 -p 9300:9300 -v /usr/share/elasticsearch.yml:/usr/share/elasticsearch/config/elasticsearch.yml -e ES_JAVA_OPTS="-Xms256m -Xmx256m" elasticsearch:5.6.8
命令解释:
-d:守护线程启动(后台启动)
-p 9200:9200 -p 9300:9300 //端口映射
-v /usr/share/elasticsearch.yml:/usr/share/elasticsearch/config/elasticsearch.yml
//映射配置文件
--name:elasticsearch(容器名字)
-e:分配初始内存
注意:也可以用命令:docker run -d -p 9200:9200 -p 9300:9300 --name="elasticsearch" elasticsearch:5.6.8 启动,但是很有可能起不来,报错
OpenJDK 64-Bit Server VM warning: INFO: os::commit_memory(0x0000000085330000, 2060255232, 0) failed; error='Cannot allocate memory' (errno=12)
这是因为内存不够,初始化分配内存失败的原因,就需要使用上面分配有内存信息的命令
二:开启外部9300端口访问
4.开启外网访问
修改映射文件elasticsearch.yml ,去掉里面的transport.host: 0.0.0.0 注释保存退出,重启容器后,外部就可以访问elasticsearch 9300端口了
注意:如果没有起来,查看启动日志如果报错ERROR: [1] bootstrap checks failed
那么需要进行系统调优配置
系统调优:
修改两处配置
第一处:
编辑 /etc/security/limits.conf,追加以下内容;
* soft nofile 65536
* hard nofile 65536
此文件修改后需要重新登录用户,才会生效
第二处:
编辑 /etc/sysctl.conf,追加以下内容:
vm.max_map_count=655360
保存后,执行:
sysctl -p
重新启动,成功。
三:添加ik分词器插件
使用xftp将本地ik分词器复制到服务器root目录下
然后将使用docker cp命令将ik分词器复制到elasticsearch容器中的plugins目录下
[root@iZbp1ac6bnsz8uj0n74i0aZ ~]# docker cp ik f4b91afeab8e:/usr/share/elasticsearch/plugins
使用docker exec -it [容器id] bash 进入elasticsearch容器,查看elasticsearch容器中的plugins目录多了ik目录
重启容器使ik分词器生效
访问:ip:9200/_analyze?analyzer=ik_smart&pretty=true&text=我是程序员 测试ik分词器是否生效
四:安装header插件
配置es跨域访问:
编辑es映射文件:elasticsearch.yml
新增以下内容:
http.cors.enabled: true
http.cors.allow-origin: "*":
重启es容器生效
使用命令以下命令下载mobz/elasticsearch-head:5镜像
[root@iZbp1ac6bnsz8uj0n74i0aZ /]# docker pull mobz/elasticsearch-head:5
创建mobz/elasticsearch-head:5容器并启动:
docker run -d --name elasticsearch-head -p 9100:9100 mobz/elasticsearch-head:5
访问:ip:9100
更多推荐
所有评论(0)