当前位置: 首页 > news >正文

Windows 环境使用 Docker 安装 ES Kibana 8.12.2 及analysis-ik插件

在我们本地开发或测试的过程中,往往需要搭建自己的开发环境,最方便的方式就是使用docker来完成。快捷,方便,随用随启。
本篇使用docker搭建 ElasticSearch8.12.2 的单机过程,仅作为测试练习使用,(elasticsearch 8.12.2+kibana 8.12.2 )

注意:kibana与Elasticsearch的版本必须一致,不然会匹配不成功

1. 前提条件

安装Docker Desktop for Windows:请确保您的Windows系统已安装Docker Desktop。可以从Docker官网下载并安装。

2. 部署ES

创建网络
docker network create elasticsearch
加载镜像

首先,打开命令提示符或PowerShell,运行以下命令以拉取最新版本的Elasticsearch和Kibana镜像:

docker pull elasticsearch:8.12.2
容器启动

接下来,运行以下命令以启动Elasticsearch容器:

docker run -d --name elasticsearch -p 9200:9200 -p 9300:9300 -e "discovery.type=single-node" elasticsearch:8.12.2

这个命令将:

  • -d:在后台运行容器。
  • --name elasticsearch:为容器命名。
  • -p 9200:9200-p 9300:9300:将容器的端口映射到宿主机的端口。
  • -e "discovery.type=single-node":设置Elasticsearch为单节点模式。
创建es账号

为了安全起见,我们将为Elasticsearch设置用户名和密码。运行以下命令进入Elasticsearch容器并设置密码:

# 使用root用户进入容器
docker exec --user root -it elasticsearch /bin/bash# 添加用户
/usr/share/elasticsearch/bin/elasticsearch-users useradd jingyu
/usr/share/elasticsearch/bin/elasticsearch-users roles -a superuser jingyu
/usr/share/elasticsearch/bin/elasticsearch-users roles -a kibana_system jingyu
修改ES配置
cluster.name: "docker-cluster"
network.host: 0.0.0.0#----------------------- BEGIN SECURITY AUTO CONFIGURATION -----------------------
#
# The following settings, TLS certificates, and keys have been automatically      
# generated to configure Elasticsearch security features on 07-08-2024 16:01:31
#
# --------------------------------------------------------------------------------# Enable security features
xpack.security.enabled: falsexpack.security.enrollment.enabled: true# Enable encryption for HTTP API client connections, such as Kibana, Logstash, and Agents
xpack.security.http.ssl:enabled: truekeystore.path: certs/http.p12# Enable encryption and mutual authentication between cluster nodes
xpack.security.transport.ssl:enabled: trueverification_mode: certificatekeystore.path: certs/transport.p12truststore.path: certs/transport.p12
#----------------------- END SECURITY AUTO CONFIGURATION -------------------------
http.cors.allow-origin: "*"
http.cors.enabled: true
http.cors.allow-headers: Authorization,X-Requested-With,Content-Length,Content-Type
重启ES
docker restart elasticsearch

3. 部署Kibana

加载镜像
docker pull kibana:8.12.2
容器启动

现在,我们启动Kibana容器,并连接到Elasticsearch容器:

 docker run -d --name kibana -p 5601:5601 --link elasticsearch:elasticsearch kibana:8.12.2

这个命令将:

  • -d:在后台运行容器。
  • --name kibana:为容器命名。
  • -p 5601:5601:将容器的端口映射到宿主机的端口。
  • --link elasticsearch:elasticsearch:链接到Elasticsearch容器。
修改Kibana配置

我们需要编辑Kibana的配置文件,使其能够使用Elasticsearch的用户名和密码。首先,找到Kibana配置文件的路径,通常是在容器内的/usr/share/kibana/config/kibana.yml

运行以下命令编辑配置文件:

# Default Kibana configuration for docker target
server.host: "0.0.0.0"
server.shutdownTimeout: "5s"
elasticsearch.hosts: [ "http://elasticsearch:9200" ]
monitoring.ui.container.elasticsearch.enabled: true
elasticsearch.username: "jingyu"
elasticsearch.password: "jingyu"

kibana.yml文件中,添加以下内容(使用你在步骤3中生成的用户名和密码)。

重启Kibana
docker restart kibana

现在,您可以在浏览器中访问http://localhost:5601来打开Kibana的Web界面。您可能需要使用在步骤3中设置的用户名和密码进行登录。

4. 安装插件

安装指令
./bin/elasticsearch-plugin install https://github.com/medcl/elasticsearch-analysis-ik/releases/download/v8.12.2/elasticsearch-analysis-ik-8.12.2.zip
安装过程
sh-5.0$ pwd
/usr/share/elasticsearch
sh-5.0$ ./bin/elasticsearch-plugin install https://github.com/medcl/elasticsearch-analysis-ik/releases/download/v8.12.2/elasticsearch-analysis-ik-8.12.2.zip
-> Installing https://github.com/medcl/elasticsearch-analysis-ik/releases/download/v8.12.2/elasticsearch-analysis-ik-8.12.2.zip
-> Downloading https://github.com/medcl/elasticsearch-analysis-ik/releases/download/v8.12.2/elasticsearch-analysis-ik-8.12.2.zip
[=================================================] 100%?? 
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@     WARNING: plugin requires additional permissions     @
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
* java.net.SocketPermission * connect,resolve
See https://docs.oracle.com/javase/8/docs/technotes/guides/security/permissions.html
for descriptions of what these permissions allow and the associated risks.Continue with installation? [y/N]y
-> Installed analysis-ik
-> Please restart Elasticsearch to activate any plugins installed
sh-5.0$

5. 注意事项

在生产环境中,应该使用docker-compose来管理服务,并确保所有的敏感信息(如用户名和密码)都通过环境变量或加密的方式进行管理。
考虑到安全性和数据持久性,可能还需要设置卷(volume)来持久化Elasticsearch和Kibana的数据。
按照以上步骤操作后,应该能够顺利在Windows系统中使用Docker成功部署Elasticsearch、Kibana和插件,并设置用户名和密码。祝您使用愉快!

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • 【黑马】MyBatis
  • pythonUI自动化008::allure测试报告(安装及应用)
  • sed命令笔记
  • 基于SpringBoot+Vue校园失物招领系统的设计与实现
  • 【将Python程序打包成一个可执行文件】
  • Spring Data JPA 自动创建时间的相关注解和用法
  • vue前后端交互学习问题记录2
  • LeetCode 第二十三天 2024.8.9
  • NPM使用教程
  • Halcon玩转机器视觉专栏特殊声明
  • springboot 实现阿里云点播系统使用凭证播放
  • JS 逆向高阶之 - nodejs 常用的几个加密, 解密的库
  • AICG学习(一)搭建魔搭,LoRA
  • Javascript——原始数据类型的自动装箱
  • 甄选范文“论软件设计方法及其应”软考高级论文系统架构设计师论文
  • 【跃迁之路】【735天】程序员高效学习方法论探索系列(实验阶段492-2019.2.25)...
  • 4月23日世界读书日 网络营销论坛推荐《正在爆发的营销革命》
  • Cookie 在前端中的实践
  •  D - 粉碎叛乱F - 其他起义
  • HTML5新特性总结
  • JAVA_NIO系列——Channel和Buffer详解
  • mac修复ab及siege安装
  • Markdown 语法简单说明
  • PHP 的 SAPI 是个什么东西
  • Promise面试题2实现异步串行执行
  • React 快速上手 - 06 容器组件、展示组件、操作组件
  • Transformer-XL: Unleashing the Potential of Attention Models
  • Vue学习第二天
  • 番外篇1:在Windows环境下安装JDK
  • 机器学习学习笔记一
  • 看域名解析域名安全对SEO的影响
  • 如何用Ubuntu和Xen来设置Kubernetes?
  • 实战:基于Spring Boot快速开发RESTful风格API接口
  • 一些css基础学习笔记
  • 掌握面试——弹出框的实现(一道题中包含布局/js设计模式)
  • 【云吞铺子】性能抖动剖析(二)
  • Hibernate主键生成策略及选择
  • ​【C语言】长篇详解,字符系列篇3-----strstr,strtok,strerror字符串函数的使用【图文详解​】
  • ​卜东波研究员:高观点下的少儿计算思维
  • ​如何使用ArcGIS Pro制作渐变河流效果
  • # linux 中使用 visudo 命令,怎么保存退出?
  • # Pytorch 中可以直接调用的Loss Functions总结:
  • # 睡眠3秒_床上这样睡觉的人,睡眠质量多半不好
  • #NOIP 2014# day.1 T2 联合权值
  • #php的pecl工具#
  • #QT 笔记一
  • (31)对象的克隆
  • (39)STM32——FLASH闪存
  • (6)STL算法之转换
  • (java版)排序算法----【冒泡,选择,插入,希尔,快速排序,归并排序,基数排序】超详细~~
  • (js)循环条件满足时终止循环
  • (编程语言界的丐帮 C#).NET MD5 HASH 哈希 加密 与JAVA 互通
  • (附源码)计算机毕业设计SSM疫情社区管理系统
  • (数据大屏)(Hadoop)基于SSM框架的学院校友管理系统的设计与实现+文档
  • (转)大道至简,职场上做人做事做管理