docker安装elasticsearch与head教程完整版—.NET Core Web Api与elasticsearch打造全站全文搜索引擎
默认已经有docker环境
下载与安装 elasticsearch ,从hub.docker里面可以看到最新版本的镜像,选择你想要的版本
本教程是以 7.17.7 为案例,为啥不适用最新的,首先个人一般需用最新的版本,如果有亢很难填,其次我自己的服务器下载的太慢(还是配置了docker加速地址的)拉取几个小时都下载不下来7.17.9版也一样,直接放弃~ 最终挑到了7.17.7
【官方传递】https://hub.docker.com/_/elasticsearch
一、安装、运行 elasticsearch
拉取镜像
docker pull elasticsearch:7.17.7
运行实例
docker run -d --name elasticsearch -p 9200:9200 -e "discovery.type=single-node" -e ES_JAVA_OPTS="-Xms64m -Xmx512m" elasticsearch:7.17.7
访问 ip+9200 出现该界面表示已经安装、运行成功!

如果没有成功,请看一下docker 运行的日志
docker logs [OPTIONS] CONTAINER OPTIONS说明:
-f : 跟踪日志输出
–since :显示某个开始时间的所有日志
-t : 显示时间戳
–tail : 仅列出最新N条容器日志
为防止重要的数据掉失,我们需要将es重要文件挂载到外部
1.找个存储文件的目录,我这里放置在/usr/docker

- 执行复制容器文件命令
首先得知道运行的容器信息,执行 docker ps 查看正在运行的实例

可通过 docker exec -it 容器id /bin/bash 进入容器内容查看,通过 exit 退出容器内部

复制容器内容到 /usr/docker 目录
docker cp e3b71d0d624b:/usr/share/elasticsearch /usr/docker
复制完成就可以看到 es的一大推文件

- 删除之前运行的实例,先停止再删除
docker stop xx
docker rm xxx
- 重新运行实例,命令如下
docker run -d --name es -p 9200:9200 -p 9300:9300 -v /usr/docker/elasticsearch/data:/usr/share/elasticsearch/data -v /usr/docker/elasticsearch/config/elasticsearch.yml:/usr/share/elasticsearch/config/elasticsearch.yml -v /usr/docker/elasticsearch/logs:/user/share/elasticsearch/logs -v /usr/docker/elasticsearch/plugins:/usr/share/elasticsearch/plugins -v /usr/docker/elasticsearch/backup:/usr/share/elasticsearch/backup -e "discovery.type=single-node" -e ES_JAVA_OPTS="-Xms64m -Xmx512m" --restart=always elasticsearch:7.17.7
参数部分解释,elasticsearch更多docker相关参数可在hub.docker里面找到
-v xxx:/xx 表示要挂载的目录或文件
-e ES_JAVA_OPTS=“-Xms64m -Xmx512m” 表示最大内存512M,最小内存64M
–restart=always 随docker自动重启 注:这里限制内存 不然小服务器顶不住。
运行成功,可以看到cpu,内存差点爆表,不过不用担心稍会就会降下去。至于为啥会这样目前不太清楚,有大神可以留言,请教一下!感谢好心人!


二、安装elasticsearch可视化工具
这里选择了 elasticsearch head
#拉取镜像
docker pull mobz/elasticsearch-head:5
#运行实例
docker run -p 9100:9100 --name elasticsearch-head -d mobz/elasticsearch-head:5
运行成功如下

虽然运行成功了但可以看到是未连接的状态,就算输入了正确的ip地址还是不能连接,打开F12可以看到是跨域的问题

解决办法
修改docker中elasticsearch的elasticsearch.yml文件,在最后面加上
http.cors.enabled: true
http.cors.allow-origin: "*"
可像我这样找到已经挂载在外部的配置文件,打开修改也可以使用命令随你喜欢~(记得重启服务)
如果没有挂载在外部的可进行容器里面修改(强烈推荐挂载)
docker exec -it 容器id /bin/bash
vi config/elasticsearch.yml
xxxx
#退出并重启服务
exit
docker restart 容器id

重启服务后输入正确的ip,可以看到这个界面表明可以了

最后需要解决elasticsearch-head 面板操作数据时不显示报406的问题,如图打开这些界面发现是空白的而且报错。


解决版本 修改_site/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” &&


你可以选择将文件挂载到外部去,也可以进行容器里面直接修改。
●先把elasticsearch-head的文件挂载到外部去,这里就不详细的贴出来了。
docker cp 0b5e6db9316a:/usr/src/app /usr/docker/eshead

我这里遇到一个小问题,在查看挂载信息发现文件确实时挂载成功了,但是打开vendor.js发现还是原来的内容这让我很困惑不知道是不是缓存的原因。随后我在url后面加上了版本号发现还是原来的内容 ~~
只能暴力解决了,后面在找个时间看看是什么回事 ~~
从外部复制文件到容器里面
docker cp /usr/docker/eshead/app/_site/vendor.js 容器id:/usr/src/app/_site
重启服务,好了,刷新界面看到这个界面就 ok

查看挂载信息
docker inspect 容器id
到此我们安装教程已经结束了,下篇将与wep api 对接完成我们的全站搜索功能
附源加速

相关文章:
docker安装elasticsearch与head教程完整版—.NET Core Web Api与elasticsearch打造全站全文搜索引擎
默认已经有docker环境 下载与安装 elasticsearch ,从hub.docker里面可以看到最新版本的镜像,选择你想要的版本 本教程是以 7.17.7 为案例,为啥不适用最新的,首先个人一般需用最新的版本,如果有亢很难填,其次…...
蓝桥冲刺31天之315
没有一个冬天不可逾越 也没有一个春天不会来临 所有美好的食物,都会有一个等待的过程 低谷时蛰伏,静默时沉淀 做三四月的事,在八九月自有答案 目录 A:0的个数 题目描述: 输入格式 输出格式 样例输入 样例输出 评测用例规模与…...
常见排序算法
/懂了和写出来是两码事啊啊......orz./ Talk is cheap, show me the code 一、快速排序 直接背模板就能过: 当xq[lr>>1]的边界情况 此时x取的是序列中间靠左的位置(如果序列个数为奇,则取正中间,如果为偶,则取中间靠左),此时如果元素个数为2, 则中间靠左就…...
C语言实现学生成绩管理系统思考
学生成绩管理系统思考 作业要求: 目录 思路 基本函数 学习理解大佬的代码: 完成作业: 思路 学生成绩管理系统,首先要初始化系统, 用C语言做学生实验管理系统要求实现对某班学生3门课程(包括语文、数…...
C++11中Lambda新特性
1.定义 lambda匿名函数的语法格式: [外部变量访问方式说明符](参数)mutablenoexcept/throw()->返回值类型 {函数体; };其中各部分的含义分别为: a.[外部变量方位方式说明符] []方括号用于向编译器表明当前是一个lambda表达式,其不能被省略…...
【jvm系列-01】初识虚拟机与java虚拟机
初识虚拟机与java虚拟机一,虚拟机与java虚拟机1,虚拟机2,java虚拟机3,jvm整体结构图4,jvm的架构模型5,jvm的生命周期6,jvm的种类划分6.1,Sun Classic Vm6.2,Exact VM6.3&…...
「Python 基础」数据库应用编程
Python 定义了一套 DB-API,任何数据库要连接到 Python,只需要提供符合 Python 标准的数据库驱动即可; 文章目录1. 连接 SQLite1. 建表、插入数据2. 查询数据2. 连接 MySQL1. 安装驱动2. 演示连接3. SQLAlchemy1. 安装2. DBSession3. add4. qu…...
一个nginx的小项目,不写代码,实现在局域网内访问其他电脑的网页
准备工作 下载nginx //官网 https://nginx.org/en/download.html //直接下载 https://nginx.org/download/nginx-1.23.3.zip解压 下载一个html项目,或者自己随便写一个 我是直接下载的,然后使用的是第一个01 https://gitee.com/StarPort/HTML_CSSTe…...
23.3.14打卡 2022年江西省大学生程序设计竞赛(正式赛)ABL
就写了签到, 其他题没写, 这场好像3题就银了 纪念一下3.14原粥率日 比赛链接:https://ac.nowcoder.com/acm/contest/43898 A题 Special Adjustment Method 题意 给出非负整数x, y, z 你可以让其中两个数字-1, 另外一个2, 使得x2y2z2x^2y^{2}z^{2}x2y2z2最大 题解 这题很容…...
用idea操作hbase数据库,并映射到hive
依赖条件:需要有Hadoop,hive,zookeeper,hbase环境映射:每一个在 Hive 表中的域都存在于 HBase 中,而在 Hive 表中不需要包含所有HBase 中的列。HBase 中的 RowKey 对应到 Hive 中为选择一个域使用 :key 来对…...
手机解锁方法:8个顶级的 Android 手机解锁软件
一般来说,太简单的密码是不安全的,所以我们设置一个安全的密码,可能会稍微复杂一点。然而,我们可能经常会忘记复杂的密码并锁定我们的 Android 智能手机。 8个顶级的 Android 手机解锁软件 如果您遇到过这种情况并且正在寻找一种…...
JVS快速开发平台2.1.7版本,列表页配置新增特性介绍
JVS 在3月份更新了2.1.7版本,本次更新涉及到很多方面,其中包括逻辑引擎、流程引擎、列表引擎、数据处理引擎、图表配置加工等。这里我们先介绍下列表页配置引擎扩展的相关内容,我们先来看看最后配置的列表页配置的效果1、列表页展示方面&…...
【华为机试真题详解 Python实现】去除多余空格【2023 Q1 | 100分】
文章目录 前言题目描述输入描述输出描述示例 1解题思路参考代码前言 《华为机试真题详解》专栏含牛客网华为专栏、华为面经试题、华为OD机试真题。 如果您在准备华为的面试,期间有想了解的可以私信我,我会尽可能帮您解答,也可以给您一些建议! 本文解法非最优解(即非性能…...
【SpringBoot项目实战+思维导图】瑞吉外卖⑤(新增套餐、套餐分页查询、删除套餐、短信发送、手机验证码登录)
文章目录新增套餐需求分析数据模型准备工作前端页面分析代码开发根据分类查询菜品功能实现功能测试保存套餐功能实现功能测试思维导图总结套餐分页查询需求分析前端页面分析代码开发基本信息查询问题分析功能完善功能测试思维导图总结删除套餐需求分析前端页面分析代码开发功能…...
OpenAI 发布GPT-4——全网抢先体验
OpenAI 发布GPT-4 最近 OpenAI 犹如开挂一般,上周才刚刚推出GPT-3.5-Turbo API,今天凌晨再次祭出GPT-4这个目前最先进的多模态预训练大模型。与上一代GPT3.5相比,GPT-4最大的飞跃是增加了识图能力,并且回答准确性也得到显著提高。…...
C++——多态
多态分为两类静态多态:函数重载和运算符重载属于静态多态,复用函数名动态多态:派生类和虚函数实现运行时多态静态多态和动态多态的区别:静态多态的函数地址早绑定——编译阶段确定函数地址动态多态的函数地址晚绑定——运行阶段确…...
javaSE系列之类与对象
javaSE系列之类与方法什么是类类的定义书写事项什么是实例化this引用this的注意事项对象的初始化构造方法封装的概念访问限定符封装扩展之包static成员static的特性static的初始化代码块注意事项内部类1.实例内部类💗 💗 博客:小怡同学💗 &am…...
远程构建(命令、脚本构建)jenkins
在对应项目,开启远程构建开关添加API token系统设置调整用户权限获取crumbcurl调用构建 1、进入对应项目的设置页面:开启远程构建开关 2、 添加 API token:进入对应用户的设置页面 3、系统设置调整权限,如图 4、由于jenkins的安全…...
2023-03-15 ElasticSearch
ElasticSearch 1.Docker安装ElasticSearch 1.1. es及kibana下载 docker pull elasticsearch:7.4.2 docker pull kibana:7.4.2创建映射文件: mkdir -p /elasticsearch/configmkdir -p /elasticsearch/datamkdir -p /elasticsearch/plugins在config下执行 vim elasticsearch…...
指针和数组笔试题解析【下篇】
文章目录👁️6.指针笔试题👀6.1.试题(1)👀6.2.试题(2)👀6.3.试题(3)👀6.4.试题(4)👀6.5.试题(5&am…...
CVPR 2025 MIMO: 支持视觉指代和像素grounding 的医学视觉语言模型
CVPR 2025 | MIMO:支持视觉指代和像素对齐的医学视觉语言模型 论文信息 标题:MIMO: A medical vision language model with visual referring multimodal input and pixel grounding multimodal output作者:Yanyuan Chen, Dexuan Xu, Yu Hu…...
DeepSeek 赋能智慧能源:微电网优化调度的智能革新路径
目录 一、智慧能源微电网优化调度概述1.1 智慧能源微电网概念1.2 优化调度的重要性1.3 目前面临的挑战 二、DeepSeek 技术探秘2.1 DeepSeek 技术原理2.2 DeepSeek 独特优势2.3 DeepSeek 在 AI 领域地位 三、DeepSeek 在微电网优化调度中的应用剖析3.1 数据处理与分析3.2 预测与…...
解锁数据库简洁之道:FastAPI与SQLModel实战指南
在构建现代Web应用程序时,与数据库的交互无疑是核心环节。虽然传统的数据库操作方式(如直接编写SQL语句与psycopg2交互)赋予了我们精细的控制权,但在面对日益复杂的业务逻辑和快速迭代的需求时,这种方式的开发效率和可…...
Go 语言接口详解
Go 语言接口详解 核心概念 接口定义 在 Go 语言中,接口是一种抽象类型,它定义了一组方法的集合: // 定义接口 type Shape interface {Area() float64Perimeter() float64 } 接口实现 Go 接口的实现是隐式的: // 矩形结构体…...
系统设计 --- MongoDB亿级数据查询优化策略
系统设计 --- MongoDB亿级数据查询分表策略 背景Solution --- 分表 背景 使用audit log实现Audi Trail功能 Audit Trail范围: 六个月数据量: 每秒5-7条audi log,共计7千万 – 1亿条数据需要实现全文检索按照时间倒序因为license问题,不能使用ELK只能使用…...
令牌桶 滑动窗口->限流 分布式信号量->限并发的原理 lua脚本分析介绍
文章目录 前言限流限制并发的实际理解限流令牌桶代码实现结果分析令牌桶lua的模拟实现原理总结: 滑动窗口代码实现结果分析lua脚本原理解析 限并发分布式信号量代码实现结果分析lua脚本实现原理 双注解去实现限流 并发结果分析: 实际业务去理解体会统一注…...
【无标题】路径问题的革命性重构:基于二维拓扑收缩色动力学模型的零点隧穿理论
路径问题的革命性重构:基于二维拓扑收缩色动力学模型的零点隧穿理论 一、传统路径模型的根本缺陷 在经典正方形路径问题中(图1): mermaid graph LR A((A)) --- B((B)) B --- C((C)) C --- D((D)) D --- A A -.- C[无直接路径] B -…...
STM32HAL库USART源代码解析及应用
STM32HAL库USART源代码解析 前言STM32CubeIDE配置串口USART和UART的选择使用模式参数设置GPIO配置DMA配置中断配置硬件流控制使能生成代码解析和使用方法串口初始化__UART_HandleTypeDef结构体浅析HAL库代码实际使用方法使用轮询方式发送使用轮询方式接收使用中断方式发送使用中…...
day36-多路IO复用
一、基本概念 (服务器多客户端模型) 定义:单线程或单进程同时监测若干个文件描述符是否可以执行IO操作的能力 作用:应用程序通常需要处理来自多条事件流中的事件,比如我现在用的电脑,需要同时处理键盘鼠标…...
WebRTC从入门到实践 - 零基础教程
WebRTC从入门到实践 - 零基础教程 目录 WebRTC简介 基础概念 工作原理 开发环境搭建 基础实践 三个实战案例 常见问题解答 1. WebRTC简介 1.1 什么是WebRTC? WebRTC(Web Real-Time Communication)是一个支持网页浏览器进行实时语音…...
