Docker安装 elasticsearch-head

目录

  • 前言
  • 安装elasticsearch-head
    • 步骤1:准备
      • 1. 安装docker
      • 2. 搜索可以使用的镜像。
      • 3. 也可从docker hub上搜索镜像。
      • 4. 选择合适的redis镜像。
    • 步骤2:拉取elasticsearch-head镜像
      • 拉取镜像
      • 查看已拉取的镜像
    • 步骤3:创建容器
      • 创建容器方式1:快速创建容器
    • 步骤4:启动容器
    • 步骤5:检查是否安装成功
  • ElasticSearch-head 配置
    • 工作目录/WorkingDir
  • ElasticSearch-head 容器设置
    • 容器随 docker 自动启动
    • 容器设置IP
  • 其它
    • 打开 elasticsearch-head
    • 登录容器
    • 从 docker 向宿主拷贝WorkingDir目录
    • 从宿主向 docker 拷贝文件
  • 406 错误
  • 参考

前言

  • TencentOS Server 3.1
  • Docker version 19.03.14, build 5eb3275d40
  • ElasticSearch/ES 8.9.0

安装elasticsearch-head

步骤1:准备

1. 安装docker

安装 docker 参考:【Centos 8】【Centos 7】安装 docker

2. 搜索可以使用的镜像。

shell> docker search mobz/elasticsearch-head
NAME                      DESCRIPTION                                     STARS     OFFICIAL   AUTOMATED
mobz/elasticsearch-head   elasticsearch-head front-end and standalone …   95                   

3. 也可从docker hub上搜索镜像。

docker hub,docker hub-stage。

4. 选择合适的redis镜像。

版本拉取命令
5docker pull mobz/elasticsearch-head:5

步骤2:拉取elasticsearch-head镜像

拉取镜像

shell> docker pull mobz/elasticsearch-head:5
5: Pulling from mobz/elasticsearch-head
75a822cd7888: Pull complete 
57de64c72267: Pull complete 
4306be1e8943: Pull complete 
871436ab7225: Pull complete 
0110c26a367a: Pull complete 
1f04fe713f1b: Pull complete 
723bac39028e: Pull complete 
7d8cb47f1c60: Pull complete 
7328dcf65c42: Pull complete 
b451f2ccfb9a: Pull complete 
304d5c28a4cf: Pull complete 
4cf804850db1: Pull complete 
Digest: sha256:55a3c82dd4ba776e304b09308411edd85de0dc9719f9d97a2f33baa320223f34
Status: Downloaded newer image for mobz/elasticsearch-head:5
docker.io/mobz/elasticsearch-head:5

查看已拉取的镜像

shell> docker images
REPOSITORY                TAG       IMAGE ID       CREATED        SIZE
hello-world               latest    9c7a54a9a43c   3 months ago   13.3kB
nacos/nacos-server        v2.2.1    faff56ad2ef5   4 months ago   1.17GB
redis                     6.2.1     de974760ddb2   2 years ago    105MB
elasticsearch             7.12.0    9337ed510a0c   2 years ago    830MB
mysql                     5.7.31    42cdba9f1b08   2 years ago    448MB
mobz/elasticsearch-head   5         b19a5c98e43b   6 years ago    824MB

步骤3:创建容器

创建容器方式1:快速创建容器

shell> docker create --name elasticsearch-head1 -p 9100:9100 mobz/elasticsearch-head:5

步骤4:启动容器

shell> docker start elasticsearch-head1

步骤5:检查是否安装成功

浏览器打开 http://localhost:9100, 如果出现以下界面就是安装成功:

在这里插入图片描述

ElasticSearch-head 配置

工作目录/WorkingDir

"WorkingDir": "/usr/src/app" 

ElasticSearch-head 容器设置

容器随 docker 自动启动

设置容器的重启策略

shell> docker update --restart=always elasticsearch-head1
  • 每次docker启动时,容器也会自动启动

容器设置IP

向网络中添加容器

shell> docker network connect --ip 172.19.0.2  mynetwork elasticsearch-head1 
  • docket ip : 172.19.0.2

其它

打开 elasticsearch-head

  • http://localhost:9100
  • http://localhost:9100/?base_uri=http://127.0.0.1:9200
  • http://localhost:9100/?base_uri=http://127.0.0.1:9200&auth_user=elastic&auth_password=changeme
  • http://localhost:9100/?base_uri=http%3A%2F%2F127.0.0.1:9200&auth_user=elastic&auth_password=changeme

登录容器

shell> docker exec -it elasticsearch-head1 /bin/bash

从 docker 向宿主拷贝WorkingDir目录

shell> docker cp elasticsearch-head1:/usr/src/app ~/

从宿主向 docker 拷贝文件

shell> docker cp ~/app/_site/vendor.js  elasticsearch-head1:/usr/src/app/_site

406 错误

请求 ElasticSearch API 遇到 406 错误 :

{"error":"Content-Type header [application/x-www-form-urlencoded] is not supported","status":406}

原因:elasticsearch 增加了内容类型检查,推荐使用Content-Type: application/json

解决方法:

  1. 从 docker 容器向宿主拷贝WorkingDir目录
  2. 修改_site/vendor.js。编辑vendor.js 共有两处
修改 6886行:
contentType: "application/x-www-form-urlencoded
改成
contentType: "application/json;charset=UTF-8"
修改 7573行: 
var inspectData = s.contentType === "application/x-www-form-urlencoded" &&
改成
var inspectData = s.contentType === "application/json;charset=UTF-8" &&
  1. 将 vendor.js 拷贝到docker容器
  2. 重启容器

参考

https://blog.csdn.net/wangxilong1991/article/details/80618082
https://blog.csdn.net/biu_biu_duda/article/details/121982287
https://blog.csdn.net/qq_35956041/article/details/101444499
https://github.com/mobz/elasticsearch-head

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/36671.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

SpringBoot复习:(28)【前后端不分离】自定义View

一、自定义View package cn.edu.tju.view;import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.ComponentScan; import org.springframework.context.annotation.Configuration; import org.springframework.stereotype.Comp…

C# --- Case Study

C# --- Case Study C# — Mongo数据库事务的应用 C# — 如何解析Json文件并注入MongoDB C# — MongoDB如何安全的替换Collection

百度翻译API整合SpringBoot

案例背景,按照官方给的Demo,实在是太啰嗦了, 大致步骤 封装数据>签名>发送请求, 仔细一看劈里啪啦一大堆,最后还要手动关流关连接,难道整合到SpringBoot项目里面我还得为内存管理考虑 所以就有了如下需求 使用 RestTemplate的对象进行发送请求数据,RestTemplate由s…

Redis缓存删除略和内存淘汰策略及LRU

1、Redis内存若在配置文件中未设置,内存会无限制增长,直到超出物理内存,抛出out of memory内存耗尽异常 解决方法,调整maxmemory参数,一般设置为物理内存的3/4,并且添加缓存删除策略 2、Redis对于设置了过…

项目经理的会议之道:全参与还是精选参与?

引言 在项目管理中,会议是一个常见的工具,用于沟通信息、解决问题、做出决策等。然而,项目经理是否需要参加所有的会议呢?这是一个值得深思的问题。作为项目经理,我们需要权衡会议的重要性和我们的时间管理。我们不能…

【第一阶段】kotlin的函数

函数头 fun main() {getMethod("zhangsan",22) }//kotlin语言默认是public,kotlin更规范,先有输入( getMethod(name:String,age:Int))再有输出(Int[返回值]) private fun getMethod(name:String,age:Int): Int{println("我叫…

Elasticsearch集群shard过多后导致的性能问题分析

1.问题现象 上午上班以后发现ES日志集群状态不正确,集群频繁地重新发起选主操作。对外不能正常提供数据查询服务,相关日志数据入库也产生较大延时 2.问题原因 相关日志 查看ES集群日志如下: 00:00:51开始集群各个节点与当时的master节点…

Playwright快速上手-1

前言 随着近年来对UI自动化测试的要求越来越高,,功能强大的测试框架也不断的涌现。本系列主讲的Playwright作为一款新兴的端到端测试框架,凭借其独特优势,正在逐渐成为测试工程师的热门选择。 本系列文章将着重通过示例讲解 Playwright python开发环境的搭建 …

Linux Day07

一、僵死进程 1.1僵死进程产生的原因 子进程先于父进程结束, 而父进程没有获取子进程退出码,释放子进程占用的资源,此时子进程将成为一个僵死进程。 在第一个框这里时父进程子进程都没有结束,显示其pid 父进程是2349,子进程是235…

【Nginx】Nginx网站服务

国外主流还是使用apache;国内现在主流是nginx(并发能力强,相对稳定) nginx:高性能、轻量级的web服务软件 特点: 1.稳定性高(没apache稳); 2.系统资源消耗比较低&#xf…

Failed to set locale, defaulting to C.UTF-8 或者中文系统语言转英文系统语言

CentOS 8中执行命令,出现报错:Failed to set locale, defaulting to C.UTF-8报错原因: 1、没有安装相应的语言包。2、没有设置正确的语言环境。 解决方法1:安装语言包 设置语言环境需使用命令 localelocale -a 命令,查…

代码随想录day02

977.有序数组的平方 ● 力扣题目链接 ● 给你一个按 非递减顺序 排序的整数数组 nums,返回 每个数字的平方 组成的新数组,要求也按 非递减顺序 排序。 思路 ● 暴力排序,时间复杂度O(n nlogn) ● 使用双指针,时间复杂度O(n) …

Vue中使用v-bind:class动态绑定多个类名

Vue.js是一个流行的前端框架,它可以帮助开发者构建动态交互的UI界面。在Vue.js开发中,经常需要动态绑定HTML元素的class(类名)属性,以改变元素的外观和行为。本文将介绍采用v-bind:class指令在Vue中如何动态绑定多个类…

【大数据】-- 本地部署 Flink kubernetes operator

目录 1.说明 1.1 版本 1.2 kubernetes 环境 1.3 参考 2.安装步骤 2.1 安装本地 kubernetes 环境

判断链表有环的证明

目录 1.问题 2.证明 3.代码实现 1.问题 给你一个链表的头节点 head ,判断链表中是否有环。 如果链表中有某个节点,可以通过连续跟踪 next 指针再次到达,则链表中存在环。 为了表示给定链表中的环,评测系统内部使用…

TansUNet代码理解

首先通过论文中所给的图片了解网络的整体架构: vit_seg_modeling部分 模块引入和定义相关量: # codingutf-8 # __future__ 在老版本的Python代码中兼顾新特性的一种方法 from __future__ import absolute_import from __future__ import division fr…

新基建助推数字经济,CosmosAI率先布局AI超算租赁新纪元

伦敦, 8月14日 - 在英国伦敦隆重的Raffles OWO举办的欧盟数字超算新时代战略合作签约仪式,CosmosAI、Infinite Money Fund与Internet Research Lab三方强强联手,达成了历史性的合作协议,共同迈向超算租赁新纪元。 ​ 这次跨界的合作昭示了全球…

Session基础

文章目录 什么是Sessionsession与cookie的区别和联系Session的存Session的取 什么是Session 服务器为每个用户浏览器创建一个会话对象(session对象),一个浏览器只能产生一个session当新建一个窗口访问服务器时,还是原来的那个ses…

VR家装提升用户信任度,线上体验家装空间感

近些年,VR家装逐渐被各大装修公司引入,VR全景装修的盛行,大大增加了客户“所见即所得”的沉浸式体验感,不再是传统二维平面的看房模式,而是让客户通过视觉、听觉、交互等功能更加真实的体验家装后的效果。 对于传统家装…

本地Linux 部署 Dashy 并远程访问教程

文章目录 简介1. 安装Dashy2. 安装cpolar3.配置公网访问地址4. 固定域名访问 转载自cpolar极点云文章:本地Linux 部署 Dashy 并远程访问 简介 Dashy 是一个开源的自托管的导航页配置服务,具有易于使用的可视化编辑器、状态检查、小工具和主题等功能。你…