栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 前沿技术 > 大数据 > 大数据系统

2、docker安装elasticSearch和head插件

2、docker安装elasticSearch和head插件

这里写目录标题
  • 一、安装环境
  • 二、下载镜像文件
  • 三、启动elasticsearch
    • 查看是否启动
    • 设置数据卷
    • 将docker文件拷贝出来
    • 停止并删除elasticsearch容器
    • 启动并挂在外部文件夹
    • 测试
  • 四、启动elasticsearch-head插件
    • 测试
  • 五、外部访问测试
    • 访问elasticsearch
    • 访问elasticsearch-head
  • 六、遇到问题
    • 解决办法
    • 修改完之后退出容器并重启

一、安装环境

操作系统:CentOS Linux release 7.9.2009 (Core)
docker版本: 20.10.11

二、下载镜像文件

上docker hub查看elasticsearch和head版本号,选择下载

docker pull elasticsearch:7.14.2
docker pull mobz/elasticsearch-head:5-alpine

执行命令查看刚刚拉去的文件

docker images

三、启动elasticsearch

docker run -d --name elasticsearch  -p 9200:9200 -p 9300:9300 -e  "discovery.type=single-node" -e ES_JAVA_OPTS="-Xms256m -Xmx256m" elasticsearch:7.14.2

-d 后台启动
–name 起别名即:NAMES
-p 9200:9200 将端口映射出来
elasticsearch的9200端口是供外部访问使用;9200端口是供内部访问使用集群间通讯
–net somenetwork暂不使用
-e启动时替换elasticsearch的配置文件
-e “discovery.type=single-node"单节点启动
-e ES_JAVA_OPTS=”-Xms256m -Xmx256m" 限制内存大小

查看是否启动
docker ps
设置数据卷

将docker的文件映射在docker外部
配置文件、创建存放日志和数据的文件夹

mkdir -p /data/elasticsearch/{config,data,logs}
vi /data/elasticsearch/config/elasticsearch.yml

elasticsearch.yml内容

cluster.name: "docker-cluster"
network.hosts:0.0.0.0
# 跨域
http.cors.allow-origin: "*"
http.cors.enabled: true
将docker文件拷贝出来
docker cp elasticsearch:/usr/share/elasticsearch/logs /data/elasticsearch/logs
docker cp elasticsearch:/usr/share/elasticsearch/data /data/elasticsearch/data

执行之后查看本机/data/elasticsearch/logs中有刚才启动后生成的日志文件

停止并删除elasticsearch容器
docker rm elasticsearchID
启动并挂在外部文件夹
docker run -d elasticsearch 
-p 9200:9200 
-p 9300:9300 
-e "discovery.type=single-node" 
-e ES_JAVA_OPTS="-Xms256m -Xmx256m"  
-v /data/elasticsearch/logs:/usr/share/elasticsearch/logs
-v /data/elasticsearch/data:/usr/share/elasticsearch/logs
elasticsearch:7.14.2
测试
curl localhost:9200

四、启动elasticsearch-head插件
docker images

docker run -d 
--name=elasticsearch-head 
-p 9100:9100 
mobz/elasticsearch-head:5-alpine

mobz/elasticsearch-head:5-alpine 为REPOSITORY和TAG

测试
curl localhost:9100


这是使用的腾讯云服务器,登录控制台,将9200和9100端口放开

五、外部访问测试 访问elasticsearch

访问elasticsearch-head

六、遇到问题

使用elasticsearch-head创建index的时候没有反应,查看控制台报错406

解决办法

进入elasticsearch-head容器内

docker exec -it elasticsearch-head /bin/sh
vi _site/vendor.js

修改vendor.js

将第6886行
contentType: "application/x-www-form-urlencoded",
改为
contentType: "application/json;charset=UTF-8",
将第7574行
var inspectData = s.contentType === "application/x-www-form-urlencoded" &&
改为
var inspectData = s.contentType === "application/json;charset-UTF-8" &&

修改完之后退出容器并重启
exit
docker restart elasticsearch-head

再次创建index就成功了!

新手最近开始写文章,手敲不易,请多多支持!在此感谢每位读者0.0

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/654092.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号