Docker部署es和kibana

本文涉及的产品
检索分析服务 Elasticsearch 版,2核4GB开发者规格 1个月
简介: Docker部署es和kibana

1 docker安装ES

docker安装es单机版部署

1.1 方法一

首先来到docker hub搜索eselasticsearch


可以看到es的版本信息。

那么可以现在服务器上把es镜像pull下来。

命令

docker pull elasticsearch:7.10.1

pull下来之后嘛你就run它嘛

1.2 方法二

直接通过已知版本号进行下载

docker run -d --name="elasticsearch" -p 9200:9200 -p 9300 -p 9300 -p 5601:5601 -e "discovery.type=single-node" -e ES_JAVA_OPTS="-Xms1024m -Xmx1024m"  elasticsearch:7.10.1

-d 后台运行


–name 设置容器名字


-p端口设置


-e属性设置


比如discovery.type设置为单节点模式


ES_JAVA_OPTS 参考jvm配置,设置的是es能够使用的最大最小内存,假如不加限制,那么es这个东西会很占内存,达到1G+,如果你的服务器ram只有2G,那么服务器可能会出现卡死(别问我怎么知道的)


这个时候es就应该启动成功了,可以验证一下游览器输入: ip:9200

启动成功

2 安装Kibana

接下来就要安装kibana了。

先尝试了这种方式:

docker run -it -e ELASTICSEARCH_URL=http:127.0.0.1:9200 --name="kibana" --network=container:elasticsearch kibana:7.10.1

然而通过ip:端口访问的时候会有kibana server is not ready yet。

查看日志

说明没有和es连接上。需要修改配置文件地址

第二种方式直接链接到容器上

docker run -it --name="kibana" -p 5602:5601 --link elasticsearch:elasticsearch kibana:7.10.1

设置成功之后,在浏览器使用 ip:5602访问,得到了正常显示的界面。

3 注意

过程中需要注意的,es和kibana 的版本需要一致,否则跑不起来嘛

可能出现的错误:

一:空间不足

ERROR: [2] bootstrap checks failed

[1]: max file descriptors [4096] for elasticsearch process is too low, increase to at least [65536]

[2]: max virtual memory areas vm.max_map_count [65530] is too low, increase to at least [262144]

[1]: max file descriptors [65535] for elasticsearch process is too low, increase to at least [65536]


修改过程

编辑 /etc/security/limits.conf,追加以下内容;


soft nofile 65536

hard nofile 65536

此文件修改后需要重新登录用户,才会生效

[2]: max virtual memory areas vm.max_map_count [65530] is too low, increase to at least [262144]

编辑 /etc/sysctl.conf,追加以下内容:

vm.max_map_count=655360

保存后,执行:


sysctl -p


重新启动,成功。

4 docker安装ik分词器

这个要和es版本对应,我es是7.10.1 所有下的也是同版本号

下载地址:

https://github.com/medcl/elasticsearch-analysis-ik/releases/tag/v7.10.1


下载后转移到服务器上

通过docker cp 复制到容器内 /usr/share/elasticsearch/plugins 就是这个位置,别乱放


解压

unzip 命令

删除安装包,并将接下文件夹名字改为ik

mv 命令如图

重启 es 就好了

相关实践学习
利用Elasticsearch实现地理位置查询
本实验将分别介绍如何使用Elasticsearch7.10版本进行全文检索、多语言检索和地理位置查询三个Elasticsearch基础检索子场景的实现。
ElasticSearch 入门精讲
ElasticSearch是一个开源的、基于Lucene的、分布式、高扩展、高实时的搜索与数据分析引擎。根据DB-Engines的排名显示,Elasticsearch是最受欢迎的企业搜索引擎,其次是Apache Solr(也是基于Lucene)。 ElasticSearch的实现原理主要分为以下几个步骤: 用户将数据提交到Elastic Search 数据库中 通过分词控制器去将对应的语句分词,将其权重和分词结果一并存入数据 当用户搜索数据时候,再根据权重将结果排名、打分 将返回结果呈现给用户 Elasticsearch可以用于搜索各种文档。它提供可扩展的搜索,具有接近实时的搜索,并支持多租户。
目录
相关文章
|
1天前
|
消息中间件 编解码 Docker
Docker部署RabbitMQ消息中间件
【7月更文挑战第4天】Docker部署RabbitMQ消息中间件
17 3
|
4天前
|
消息中间件 数据可视化 RocketMQ
【RocketMQ系列二】通过docker部署单机RocketMQ
【RocketMQ系列二】通过docker部署单机RocketMQ
16 4
|
6天前
|
Nacos 数据中心 Docker
Docker 部署 Nacos 集群
Docker 部署 Nacos 集群
|
9天前
|
消息中间件 监控 RocketMQ
Docker Compose 一键快速部署 RocketMQ
Docker Compose 一键快速部署 RocketMQ
23 0
|
9天前
|
运维 Serverless 文件存储
函数计算产品使用问题之在利用Docker镜像部署应用时,容器内的应用如何能访问函数计算配置的NAS挂载
函数计算产品作为一种事件驱动的全托管计算服务,让用户能够专注于业务逻辑的编写,而无需关心底层服务器的管理与运维。你可以有效地利用函数计算产品来支撑各类应用场景,从简单的数据处理到复杂的业务逻辑,实现快速、高效、低成本的云上部署与运维。以下是一些关于使用函数计算产品的合集和要点,帮助你更好地理解和应用这一服务。
|
10天前
|
存储 Serverless 对象存储
函数计算产品使用问题之项目打包为docker镜像,该如何部署上去
函数计算产品作为一种事件驱动的全托管计算服务,让用户能够专注于业务逻辑的编写,而无需关心底层服务器的管理与运维。你可以有效地利用函数计算产品来支撑各类应用场景,从简单的数据处理到复杂的业务逻辑,实现快速、高效、低成本的云上部署与运维。以下是一些关于使用函数计算产品的合集和要点,帮助你更好地理解和应用这一服务。
|
10天前
|
关系型数据库 MySQL Nacos
使用 Docker 部署 Nacos 并配置 MySQL 数据源
使用 Docker 部署 Nacos 并配置 MySQL 数据源
25 0
|
18天前
|
前端开发 安全 数据库
Web架构&前后端分离站&Docker容器站&集成软件站&建站分配
Web架构&前后端分离站&Docker容器站&集成软件站&建站分配
|
5天前
|
安全 关系型数据库 开发者
Docker Compose凭借其简单易用的特性,已经成为开发者在构建和管理多容器应用时不可或缺的工具。
Docker Compose是容器编排利器,简化多容器应用管理。通过YAML文件定义服务、网络和卷,一键启动应用环境。核心概念包括服务(组件集合)、网络(灵活通信)、卷(数据持久化)。实战中,编写docker-compose.yml,如设置Nginx和Postgres服务,用`docker-compose up -d`启动。高级特性涉及依赖、环境变量、健康检查和数据持久化。最佳实践涵盖环境隔离、CI/CD、资源管理和安全措施。案例分析展示如何构建微服务应用栈,实现一键部署。Docker Compose助力开发者高效驾驭复杂容器场景。
16 1