Docker安装Elasticsearch相关软件安装
Docker安装Elasticsearch相关软件安装
本文将介绍通过 Docker 的方式安装 Elasticsearch 相关的软件。
1、Docker安装Elasticsearch
1.1 搜索镜像
$ docker search elasticsearch
$ docker search elasticsearch:7.12.1


1.2 拉取镜像
$ docker pull elasticsearch:7.12.1

1.3 创建挂载目录
$ mkdir -p /home/zhangshixing/es/{config,data,logs}
1.4 赋予权限
$ chown -R 1000:1000 /home/zhangshixing/es
1.5 创建配置文件
$ cd /home/zhangshixing/es/config
$ touch elasticsearch.yml
$ vim elasticsearch.yml
# 配置内容
cluster.name: "my-es"
network.host: 0.0.0.0
http.port: 9200
http.cors.enabled: true
http.cors.allow-origin: "*"
http.cors.enabled: true:此步为允许elasticsearch跨域访问,默认是false。
http.cors.allow-origin: "*":表示跨域访问允许的域名地址(*表示任意)。
1.6 启动 elasticsearch 容器
# 9200端口(Web管理平台端口),9300(服务默认端口)
$ docker run -it -d -p 9200:9200 -p 9300:9300 --name es -e ES_JAVA_OPTS="-Xms1g -Xmx1g" -e "discovery.type=single-node" --restart=always -v /home/zhangshixing/es/config/elasticsearch.yml:/usr/share/elasticsearch/config/elasticsearch.yml -v /home/zhangshixing/es/data:/usr/share/elasticsearch/data -v /home/zhangshixing/es/logs:/usr/share/elasticsearch/logs elasticsearch:7.12.1
–name:表示容器名称
-d:后台运行容器,并返回容器ID
-e:指定容器内的环境变量
-p:指定端口映射,格式为主机(宿主)端口:容器端口

1.7 测试
浏览器输入地址访问:http://192.168.2.186:9200/

如果启动失败可以通过docker logs -f 容器id查看日志信息进行解决。
2、安装ElasticSearch-Head
2.1 搜索镜像
$ docker search elasticsearch-head
$ docker search mobz/elasticsearch-head:5


2.2 获取镜像
$ docker pull mobz/elasticsearch-head:5

2.3 创建容器
$ docker create --name elasticsearch-head -p 9100:9100 mobz/elasticsearch-head:5

2.4 启动
$ docker start 容器id

2.5 测试

3、IK分词器安装
IK分词器下载地址 https://github.com/medcl/elasticsearch-analysis-ik/releases
$ unzip elasticsearch-analysis-ik-7.12.1.zip
$ mv elasticsearch-analysis-ik-7.12.1 ik

$ docker cp ./ik es:/usr/share/elasticsearch/plugins
# 重启容器
$ docker restart 56359ee1a6f8
进行测试:

解决:
安装包路径下的 _site/vendor.js6886行
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" &&
# 进入容器
$ docker exec -it a4a0678c53b8 /bin/bash

也可以不进入容器,在外面修改:
# 将容器中的配置文件复制到宿主机进行修改
$ docker cp 容器ID:/usr/src/app/_site/vendor.js /usr/local/
# 将宿主机中修改后的文件复制到容器中
$ docker cp /usr/local/vendor.js 容器ID:/usr/src/app/_site/
# 安装vim编辑器
$ apt-get update
$ apt-get install vim
然后进行修改文件,进行重新启动。

4、Kibana下载安装
4.1 查看镜像
$ docker search kibana
$ docker search kibana:7.12.1


4.2 获取镜像
$ docker pull kibana:7.12.1

4.3 获取elasticsearch容器 ip
$ docker inspect --format '{{ .NetworkSettings.IPAddress }}' es

4.4 创建 kibana 配置文件
$ mkdir -p /home/zhangshixing/kibana/
$ vim /home/zhangshixing/kibana/kibana.yml
配置内容:
# Default Kibana configuration for docker target
server.name: kibana
server.host: "0"
elasticsearch.hosts: ["http://172.17.0.4:9200"]
xpack.monitoring.ui.container.elasticsearch.enabled: true

4.5 运行 kibana
$ docker run -d --restart=always --log-driver json-file --log-opt max-size=100m --log-opt max-file=2 --name kibana -p 5601:5601 -v /home/zhangshixing/kibana/kibana.yml:/usr/share/kibana/config/kibana.yml kibana:7.12.1

4.6 测试
访问http://192.168.2.186:5601

5、Docker安装ElasticHD
5.1 搜索镜像
$ docker search ElasticHD

5.2 获取镜像
$ docker pull containerize/elastichd

5.3 启动
$ docker run -d -p 9800:9800 --restart=always --name elastichd containerize/elastichd

5.4 测试
访问 http://192.168.2.186:9800/

6、Docker安装Logstash
6.1 搜索镜像
$ docker search logstash
$ docker search logstash:7.12.1


6.2 获取镜像
$ docker pull logstash:7.12.1

6.3 启动logstash
$ docker run -d --restart=always --name logstash logstash:7.12.1

6.4 验证
$ docker logs -f logstash

6.5 错误解决
# 拷贝目录
$ docker cp logstash:/usr/share/logstash /home/zhangshixing/

$ chmod 777 -R /home/zhangshixing/logstash
$ vim /home/zhangshixing/logstash/config/logstash.yml
http.host: "0.0.0.0"
xpack.monitoring.elasticsearch.hosts: [ "http://192.168.2.186:9200" ]
6.6 重启
$ docker rm -f logstash
$ docker run -d --restart=always --name logstash -v /home/zhangshixing/logstash:/usr/share/logstash logstash:7.12.1

$ docker logs -f logstash

我们进入到 Logstash 安装目录,并修改 config/logstash.yml 文件。我们把 config.reload.automatic
设置为 true。

$ docker restart logstash
$ docker logs -f logstash

另外一种运行 Logstash 的方式,也是一种最为常见的运行方式,运行时指定 logstash 配置文件。
7、Docker安装Filebeat
7.1 搜索镜像
$ docker search filebeat

7.2 拉取镜像
$ docker pull docker.elastic.co/beats/filebeat:7.12.1

7.3 启动
$ mkdir -p /home/zhangshixing/filebeat
$ chmod 777 -R /home/zhangshixing/filebeat
$ cd /home/zhangshixing/filebeat
$ vim filebeat.yml
编辑的内容如下:
# 配置文件
filebeat.inputs:
- type: logenabled: truepaths:- /var/log/beat.log
output.elasticsearch:hosts: ["192.168.94.186:9200"]
$ docker run -d --name filebeat -v /home/zhangshixing/filebeat/filebeat.yml:/usr/share/filebeat/filebeat.yml -v /var/log/beat.log:/var/log/beat.log docker.elastic.co/beats/filebeat:7.12.1

$ docker logs -f c281f896b487

相关文章:
Docker安装Elasticsearch相关软件安装
Docker安装Elasticsearch相关软件安装 本文将介绍通过 Docker 的方式安装 Elasticsearch 相关的软件。 1、Docker安装Elasticsearch 1.1 搜索镜像 $ docker search elasticsearch $ docker search elasticsearch:7.12.11.2 拉取镜像 $ docker pull elasticsearch:7.12.11.…...
Ubuntu的安装与部分配置
该教程使用的虚拟机是virtuabox,镜像源的版本是ubuntu20.04.5桌面版 可通过下面的链接在Ubuntu官网下载:Alternative downloads | Ubuntu 也可直接通过下面的链接进入百度网盘下载【有Ubuntu20.04.5与hadoop3.3.2以及jdk1.8.0_162,该篇需要使…...
为什么 Splashtop 是更好用的 iOS 远程桌面应用
全球远程桌面软件市场最近达到19.2亿美元,表明使用任意设备实现随处远程控制越来越受欢迎。 近年来,企业的运营方式发生了重大改变,远程桌面软件已成为广泛使用的解决方案。Splashtop 是目前最好用的远程桌面工具之一,安全可靠且…...
[SQL挖掘机] - 字符串函数 - lower
介绍: lower函数是mysql中的一个字符串函数,其作用是将给定的字符串转换为小写形式。它接受一个字符串作为参数,并返回一个新的字符串,其中所有的字母字符均被转换为小写形式。 使用lower函数可以帮助我们在字符串处理中实现标准化和规范化…...
什么是Koala?
Koala 介绍 koala 是一个前端预处理器语言图形编译工具,支持 Less、Sass、Compass、CoffeeScript,帮助 web 开发者更高效地使用它们进行开发。跨平台运行,完美兼容 windows、linux、mac。 关键特性 多语言支持 支持 Less、Sass、CoffeeSc…...
阿里巴巴前端开发规范
前言 规范的目的是为了编写高质量的代码,让你的团队成员每天的心情都是愉悦的,大家在一起是快乐的。 现在软件架构的复杂性需要协同开发完成,如何高效地协同呢?无规矩不成方圆,无规范难以协同,比如…...
opencv-19 图像色彩空间转换函数cv2.cvtColor()
cv2.cvtColor() 函数是 OpenCV 中用于图像颜色空间转换的函数。它允许你将图像从一个色彩空间转换为另一个色彩空间。在 Python 中,你可以使用这个函数来实现不同色彩空间之间的转换。 函数的基本语法为: cv2.cvtColor(src, code[, dst[, dstCn]])参数…...
SpringCloudAlibaba微服务实战系列(二)Nacos配置中心
SpringCloudAlibaba Nacos配置中心 在java代码中或者在配置文件中写配置,是最不雅的,意味着每次修改配置都需要重新打包或者替换class文件。若放在远程的配置文件中,每次修改了配置后只需要重启一次服务即可。话不多说,直接干货拉…...
【Kafka源码走读】Admin接口的客户端与服务端的连接流程
注:本文对应的kafka的源码的版本是trunk分支。写这篇文章的主要目的是当作自己阅读源码之后的笔记,写的有点凌乱,还望大佬们海涵,多谢! 最近在写一个Web版的kafka客户端工具,然后查看Kafka官网,…...
Windows API遍历桌面上所有文件
要获取桌面上的图标,可以使用Windows API中的Shell API。以下是遍历桌面上所有文件的示例代码: #include <Windows.h> #include <ShlObj.h> #include <iostream> #include <vector> using namespace std;int main() {// 获取桌…...
【MySQL】基本查询(插入查询结果、聚合函数、分组查询)
目录 一、插入查询结果二、聚合函数三、分组查询(group by & having)四、SQL查询的执行顺序五、OJ练习 一、插入查询结果 语法: INSERT INTO table_name [(column [, column ...])] SELECT ...案例:删除表中重复数据 --创建…...
【Go语言】Golang保姆级入门教程 Go初学者介绍chapter1
Golang 开山篇 Golang的学习方向 区块链研发工程师: 去中心化 虚拟货币 金融 Go服务器端、游戏软件工程师 : C C 处理日志 数据打包 文件系统 数据处理 很厉害 处理大并发 Golang分布式、云计算软件工程师:盛大云 cdn 京东 消息推送 分布式文…...
mysql 自增长键值增量设置
参考文章 MySQL中auto_increment的初值和增量值设置_auto_increment怎么设置_linda公馆的博客-CSDN博客 其中关键语句 show VARIABLES like %auto_increment% set auto_increment_increment4; set auto_increment_offset2;...
【pytho】request五种种请求处理为空和非空处理以及上传excel,上传图片处理
一、python中请求处理 request.args获取的是个字典,所以可以通过get方式获取请求参数和值 request.form获取的也是个字典,所以也可以通过get方式获取请求的form参数和值 request.data,使用过JavaScript,api调用方式进行掺入jso…...
【全面解析】Windows 如何使用 SSH 密钥远程连接 Linux 服务器
创建密钥 创建 linux 服务器端的终端中执行命令 ssh-keygen,之后一直按Enter即可,这样会在将在 ~/.ssh/ 路径下生成公钥(id_rsa.pub)和私钥(id_rsa) 注意:也可以在 windows 端生成密钥,只需要保证公钥在服务器端,私钥…...
解锁新技能《基于logback的纯java版本SDK实现》
开源SDK: <!--Java通用日志组件SDK--> <dependency><groupId>io.github.mingyang66</groupId><artifactId>oceansky-logger</artifactId><version>4.3.6</version> </dependency> <!-- Java基于logback的…...
你需要知道的云原生架构体系内容
云原生(Cloud-Native)的概念在国内提及的越来越多,但大部分人对云原生的认识仅限于容器、微服务、DevOps等内容,把容器、微服务、 DevOps就等同于云原生,这显然是不对的。CNCF从其自身的角度定义了云原生技术ÿ…...
安全渗透--正则表达式
什么是正则表达式? 正则表达式是一组由字母和符号组成的特殊文本,它可以用来从文本中找出满足你想要的格式的句子。 一个正则表达式是一种从左到右匹配主体字符串的模式。 “Regular expression”这个词比较拗口,我们常使用缩写的术语“regex…...
git如何撤销commit(未push)
文章目录 前言undo commitreset current branch to here Undo Commit,Revert Commit,Drop Commit的区别 是否删除对代码的修改是否删除Commit记录是否会新增Commit记录Undo Commit不会未Push会,已Push不会不会Revert Commit会不会会Drop Com…...
Vue数组与字符串互转
一、数组转换成字符串的方法 join() var arr [A, B, C]; var str arr.join(、); console.log(str); // 输出 A、B、C toString() var arr [A, B, C]; var str arr.toString(); console.log(str); // 输出 A, B, C JSON.stringify() var arr [A, B, C]; var str JSO…...
synchronized 学习
学习源: https://www.bilibili.com/video/BV1aJ411V763?spm_id_from333.788.videopod.episodes&vd_source32e1c41a9370911ab06d12fbc36c4ebc 1.应用场景 不超卖,也要考虑性能问题(场景) 2.常见面试问题: sync出…...
【网络安全产品大调研系列】2. 体验漏洞扫描
前言 2023 年漏洞扫描服务市场规模预计为 3.06(十亿美元)。漏洞扫描服务市场行业预计将从 2024 年的 3.48(十亿美元)增长到 2032 年的 9.54(十亿美元)。预测期内漏洞扫描服务市场 CAGR(增长率&…...
鸿蒙中用HarmonyOS SDK应用服务 HarmonyOS5开发一个医院查看报告小程序
一、开发环境准备 工具安装: 下载安装DevEco Studio 4.0(支持HarmonyOS 5)配置HarmonyOS SDK 5.0确保Node.js版本≥14 项目初始化: ohpm init harmony/hospital-report-app 二、核心功能模块实现 1. 报告列表…...
大模型多显卡多服务器并行计算方法与实践指南
一、分布式训练概述 大规模语言模型的训练通常需要分布式计算技术,以解决单机资源不足的问题。分布式训练主要分为两种模式: 数据并行:将数据分片到不同设备,每个设备拥有完整的模型副本 模型并行:将模型分割到不同设备,每个设备处理部分模型计算 现代大模型训练通常结合…...
【JavaSE】绘图与事件入门学习笔记
-Java绘图坐标体系 坐标体系-介绍 坐标原点位于左上角,以像素为单位。 在Java坐标系中,第一个是x坐标,表示当前位置为水平方向,距离坐标原点x个像素;第二个是y坐标,表示当前位置为垂直方向,距离坐标原点y个像素。 坐标体系-像素 …...
高防服务器能够抵御哪些网络攻击呢?
高防服务器作为一种有着高度防御能力的服务器,可以帮助网站应对分布式拒绝服务攻击,有效识别和清理一些恶意的网络流量,为用户提供安全且稳定的网络环境,那么,高防服务器一般都可以抵御哪些网络攻击呢?下面…...
【Go语言基础【12】】指针:声明、取地址、解引用
文章目录 零、概述:指针 vs. 引用(类比其他语言)一、指针基础概念二、指针声明与初始化三、指针操作符1. &:取地址(拿到内存地址)2. *:解引用(拿到值) 四、空指针&am…...
排序算法总结(C++)
目录 一、稳定性二、排序算法选择、冒泡、插入排序归并排序随机快速排序堆排序基数排序计数排序 三、总结 一、稳定性 排序算法的稳定性是指:同样大小的样本 **(同样大小的数据)**在排序之后不会改变原始的相对次序。 稳定性对基础类型对象…...
C++课设:简易日历程序(支持传统节假日 + 二十四节气 + 个人纪念日管理)
名人说:路漫漫其修远兮,吾将上下而求索。—— 屈原《离骚》 创作者:Code_流苏(CSDN)(一个喜欢古诗词和编程的Coder😊) 专栏介绍:《编程项目实战》 目录 一、为什么要开发一个日历程序?1. 深入理解时间算法2. 练习面向对象设计3. 学习数据结构应用二、核心算法深度解析…...
关于uniapp展示PDF的解决方案
在 UniApp 的 H5 环境中使用 pdf-vue3 组件可以实现完整的 PDF 预览功能。以下是详细实现步骤和注意事项: 一、安装依赖 安装 pdf-vue3 和 PDF.js 核心库: npm install pdf-vue3 pdfjs-dist二、基本使用示例 <template><view class"con…...
