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…...
java_网络服务相关_gateway_nacos_feign区别联系
1. spring-cloud-starter-gateway 作用:作为微服务架构的网关,统一入口,处理所有外部请求。 核心能力: 路由转发(基于路径、服务名等)过滤器(鉴权、限流、日志、Header 处理)支持负…...

PPT|230页| 制造集团企业供应链端到端的数字化解决方案:从需求到结算的全链路业务闭环构建
制造业采购供应链管理是企业运营的核心环节,供应链协同管理在供应链上下游企业之间建立紧密的合作关系,通过信息共享、资源整合、业务协同等方式,实现供应链的全面管理和优化,提高供应链的效率和透明度,降低供应链的成…...

无法与IP建立连接,未能下载VSCode服务器
如题,在远程连接服务器的时候突然遇到了这个提示。 查阅了一圈,发现是VSCode版本自动更新惹的祸!!! 在VSCode的帮助->关于这里发现前几天VSCode自动更新了,我的版本号变成了1.100.3 才导致了远程连接出…...

使用分级同态加密防御梯度泄漏
抽象 联邦学习 (FL) 支持跨分布式客户端进行协作模型训练,而无需共享原始数据,这使其成为在互联和自动驾驶汽车 (CAV) 等领域保护隐私的机器学习的一种很有前途的方法。然而,最近的研究表明&…...
论文解读:交大港大上海AI Lab开源论文 | 宇树机器人多姿态起立控制强化学习框架(一)
宇树机器人多姿态起立控制强化学习框架论文解析 论文解读:交大&港大&上海AI Lab开源论文 | 宇树机器人多姿态起立控制强化学习框架(一) 论文解读:交大&港大&上海AI Lab开源论文 | 宇树机器人多姿态起立控制强化…...

CMake 从 GitHub 下载第三方库并使用
有时我们希望直接使用 GitHub 上的开源库,而不想手动下载、编译和安装。 可以利用 CMake 提供的 FetchContent 模块来实现自动下载、构建和链接第三方库。 FetchContent 命令官方文档✅ 示例代码 我们将以 fmt 这个流行的格式化库为例,演示如何: 使用 FetchContent 从 GitH…...
【Go语言基础【12】】指针:声明、取地址、解引用
文章目录 零、概述:指针 vs. 引用(类比其他语言)一、指针基础概念二、指针声明与初始化三、指针操作符1. &:取地址(拿到内存地址)2. *:解引用(拿到值) 四、空指针&am…...
MySQL 8.0 事务全面讲解
以下是一个结合两次回答的 MySQL 8.0 事务全面讲解,涵盖了事务的核心概念、操作示例、失败回滚、隔离级别、事务性 DDL 和 XA 事务等内容,并修正了查看隔离级别的命令。 MySQL 8.0 事务全面讲解 一、事务的核心概念(ACID) 事务是…...

基于Springboot+Vue的办公管理系统
角色: 管理员、员工 技术: 后端: SpringBoot, Vue2, MySQL, Mybatis-Plus 前端: Vue2, Element-UI, Axios, Echarts, Vue-Router 核心功能: 该办公管理系统是一个综合性的企业内部管理平台,旨在提升企业运营效率和员工管理水…...
NPOI操作EXCEL文件 ——CAD C# 二次开发
缺点:dll.版本容易加载错误。CAD加载插件时,没有加载所有类库。插件运行过程中用到某个类库,会从CAD的安装目录找,找不到就报错了。 【方案2】让CAD在加载过程中把类库加载到内存 【方案3】是发现缺少了哪个库,就用插件程序加载进…...