文章目录
- 前言
- 一、elasticsearch安装
- 二、elasticsearch-head安装
前言
操作系统:centos
es dockerhub:https://hub.docker.com/_/elasticsearch
一、elasticsearch安装
1.拉取镜像
docker pull elasticsearch:7.14.2
必须加上版本号
2.运行镜像
-d后台运行 -e环境变量配置-Xms/ -Xmx最小/大堆内存,默认2g,有条件还是尽量大
docker run --name elasticsearch -d -e ES_JAVA_OPTS="-Xms256m -Xmx256m" -e "discovery.type=single-node" -p 9200:9200 -p 9300:9300 elasticsearch:7.14.2
3.测试安装
浏览器访问ip地址:9200,记得开启防火墙规则
安装成功
二、elasticsearch-head安装
如果将es类比数据库,这个就相当于es的navicat
1.拉取镜像
docker pull mobz/elasticsearch-head:5
2.启动
docker run -d -p 9100:9100 docker.io/mobz/elasticsearch-head:5
3.测试连接
浏览器访问,ip地址:9100
connect那行输入es地址
无法连接,这个插件和es是前后端分离的,跨域无法访问,需要更改es配置
4.更改es配置
修改docker中elasticsearch的elasticsearch.yml文件
进入es的docker容器
docker exec -it elasticsearch容器id /bin/bash
编辑conf
//docker容器内部vi感觉怪怪的,小心使用,insert后要按下backspace
//建议复制出来再复制回去(后面5.有复制操作)或者安装vim
//apt-get update
//apt-get update
//vim config/elasticsearch.yml
vi config/elasticsearch.yml
增加跨域配置并保存,注意:后有空格
http.cors.enabled: true
http.cors.allow-origin: "*"
输入exit退出容器
5.重启es容器
docker restart 容器id
//如果重启不了,查看该容器日志
//docker logs 容器id
//复制出配置文件到当前文件夹
//docker cp 6578ff580c60:/usr/share/elasticsearch/config/elasticsearch.yml .
//vi elasticsearch.yml
//可以看到少了空格
//docker cp elasticsearch.yml 6578ff580c60:/usr/share/elasticsearch/config/elasticsearch.yml
//复制回去,重启容器
6.完成
7.es-head 406看不到具体数据
请求头问题导致,直接点击这个url可以得到数据
复制es-head容器中的vendor.js到外部
docker cp 4e7d1c9a1e46:/usr/src/app/_site/vendor.js ./
vim vendor.js
编辑(vim中输入:行号 )转到对应行
6890行contentType: “application/x-www-form-urlencoded“改为contentType: “application/json;charset=UTF-8”
7577 行"application/x-www-form-urlencoded“改为"application/json;charset=UTF-8”
Cp回去
docker cp vendor.js 4e7d1c9a1e46:/usr/src/app/_site
刷新浏览器即可