docker拉取镜像
docker pull mobz/elasticsearch-head:5
docker images
docker启动镜像
docker run --name="elasticsearch-head" -d -p 9100:9100 docker.io/mobz/elasticsearch-head:5
docker ps
连接ES
- 网页打开elasticsearch-head页面,填入ES地址
http://localhost:9100
遇到的问题及解决方法
- 连接不上ES
修改ES根目录下配置文件vi config/elasticsearch.yml
加入2个参数,并重启
http.cors.enabled: true
http.cors.allow-origin: "*"
- 参数说明:
参数 | 缺省值 | 说明 |
---|---|---|
http.cors.enabled | true | 如果启用了 HTTP 端口,那么此属性会指定是否允许跨源 REST 请求。 |
http.cors.allowed.origin | localhost | 如果 http.cors.enabled 的值为 true,那么该属性会指定允许 REST 请求来自何处。 |
- 查询时报错
{"error":"Content-Type header [application/x-www-form-urlencoded] is not supported","status":406}
- 解决
# 进入容器 (默认进入时路径: /usr/src/app)
sudo docker exec -it -u root elasticsearch-head /bin/bash
# 修改 vendor.js 共有两处
vi _site/vendor.js
* 1. 6886行
contentType: "application/x-www-form-urlencoded
改成
contentType: "application/json;charset=UTF-8"
* 2. 7573行
var inspectData = s.contentType === "application/x-www-form-urlencoded" &&
改成
var inspectData = s.contentType === "application/json;charset=UTF-8" &&
- docker基础容器中
bash: vim: command not found
问题解决
# 这是因为vim没有安装, 安装即可
# 先更新,防止提示:Unable to locate package vim
apt-get update
apt-get install vim