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

使用docker安装配置 elasticsearch + kibana

使用docker安装配置 elasticsearch8.18.0 + kibana8.18.0

使用docker-compose文件安装步骤如下:

  • 当 compose 文件名为 docker-compose.yaml 时,可以省略 -f 参数。否则所有执行 docker-compose 命令时都需要指定 -f 参数。
  • 这是基于Linux系统的操作,Windows用户的操作有所区别。
    • windows用户可以通过创建挂载卷的方式来管理相关配置文件和数据。docker volume create <volume-name>
    • 必须先创建挂在卷,然后在docker-compose.yaml文件中配置挂载卷,最后可以一次性的启动成功,无需经过复制配置文件的步骤。
  • Linux用户将配置文件复制到宿主机,然后启动容器,容器会自动读取配置文件,无需挂载卷。宿主机内的文件更方便管理。

1、创建如下的docker-compose.yaml文件

name: local-dev
services:elasticsearch:image: elasticsearch:8.18.0container_name: elasticsearchports:- "9200:9200"- "9300:9300"environment:- discovery.type=single-node- xpack.security.enabled=true # 开启安全认证,但是禁用 SSL- xpack.security.http.ssl.enabled=false- xpack.security.transport.ssl.enabled=false- ES_JAVA_OPTS=-Xms1g -Xmx3g- ELASTIC_PASSWORD=my_elastic_password  # 设置 elastic 用户的密码networks: # 配置网络【可忽略该配置】- my-network# 数据持久化、配置文件、插件volumes:- /data/elasticsearch/data:/usr/share/elasticsearch/data # 数据持久化# 如需放ik分词器插件,记得配置上停止词字典# - /data/elasticsearch/plugins:/usr/share/elasticsearch/pluginsrestart: unless-stopped # 容器退出时总是重启,除非手动停止【可忽略该配置】kibana:image: kibana:8.18.0container_name: kibanaports:- "5601:5601"environment:- ELASTICSEARCH_HOSTS=http://elasticsearch:9200- ELASTICSEARCH_USERNAME=kibana_system # 设置 kibana_system 用户的用户名【kibana需要在后台连接es,需要es提供一个账号】- ELASTICSEARCH_PASSWORD=your_kibana_system_password # 此行的密码可以为任意值,下面的操作将会设置成这个密码networks:- my-networkdepends_on:- elasticsearch # kibana 依赖 elasticsearchrestart: unless-stoppednetworks:my-network:driver: bridge

2. 先启动es,并将es的配置文件复制到宿主机

mkdir -p /data/elasticsearch/data # 递归创建数据持久化目录
docker compose up elasticsearch -ddocker cp elasticsearch:/usr/share/elasticsearch/config /data/elasticsearch/
# docker cp <elasticsearch的容器名>:/usr/share/elasticsearch/config /data/elasticsearch/

3. 在es中生成kibana所需的账号密码

# 配置一下 kibana_system 这个账户的自定义密码
# 输入此命令后,需要输入y后,再输入两次yaml文件中配置的密码
# 需要将这个 账号+密码 配置到kibana的yaml中
docker exec -it elasticsearch bin/elasticsearch-reset-password -u kibana_system -i
# -u / --username 该参数指定用户名,必须携带此参数
# -i 该参数指定交互式输入密码。不携带此参数时,将会生成一个随机密码

4. 启动kibana,并将kibana的配置文件复制到宿主机

docker compose up kibana -dmkdir -p /data/kibana
docker cp kibana:/usr/share/kibana/config /data/kibana/

5. 在kibana中生成一组用于存储对象、会话信息和报告数据的加密密钥

docker exec -it kibana kibana-encryption-keys generate
# docker exec -it <kibana的容器名> kibana-encryption-keys generate

生成的密钥如下,密钥可以多次生成:

xpack.encryptedSavedObjects.encryptionKey: 9f51f0ca45e26dffbac3b335b57736c6
xpack.reporting.encryptionKey: cbedf2f1e115ecbc29186065288cb1e6
xpack.security.encryptionKey: f9d61ebab8e544ff397ac271b3feea08

6. 修改kibana的配置文件 kibana.yml ,配置中文语言及密钥

vim /data/kibana/kibana.yml# 在打开的文件中增加如下配置:
i18n.locale: "zh-CN"
xpack.encryptedSavedObjects.encryptionKey: xxx-上一步生成的密钥
xpack.reporting.encryptionKey: xxx-上一步生成的密钥
xpack.security.encryptionKey: xxx-上一步生成的密钥

7. 下线es和kibana,修改docker-compose.yaml文件后重新启动

下线操作如下:

docker compose down elasticsearch
docker compose down kibana

yaml文件如下:

name: local-dev
services:elasticsearch:image: elasticsearch:8.18.0container_name: elasticsearchports:- "9200:9200"- "9300:9300"environment:- discovery.type=single-node- xpack.security.enabled=true- xpack.security.http.ssl.enabled=false- xpack.security.transport.ssl.enabled=false- ES_JAVA_OPTS=-Xms1g -Xmx3g- ELASTIC_PASSWORD=my_elastic_passwordnetworks:- my-networkvolumes:- /data/elasticsearch/data:/usr/share/elasticsearch/data- /data/elasticsearch/config:/usr/share/elasticsearch/config # 此行有改动- es8.18-config:/usr/share/elasticsearch/configrestart: unless-stoppedkibana:image: kibana:8.18.0container_name: kibanaports:- "5601:5601"environment:- ELASTICSEARCH_HOSTS=http://elasticsearch:9200- ELASTICSEARCH_USERNAME=kibana_system- ELASTICSEARCH_PASSWORD=your_kibana_system_passwordnetworks:- my-networkdepends_on:- elasticsearchvolumes:- /data/kibana/config:/usr/share/kibana/config # 此行有改动restart: unless-stoppednetworks:my-network:driver: bridge

上线

docker compose up -d
http://www.jsqmd.com/news/38240/

相关文章:

  • Magento API文件上传漏洞导致远程代码执行分析
  • Unity实现两种图片马赛克效果
  • winform播放声音文件,播完成后自动播放下一个文件
  • 基于OFDM数据符号的多普勒频率估计与移动台速度提取方法
  • 雷池 WAF 免费版实测:小白用 Apache 搭环境,30 分钟护住 API 接口安全
  • opentelemetry全链路初探--python注入
  • 三石量化股票数据提取分析报告 - 2025年11月12日
  • 2025年运动鞋旋转扣定做厂家权威推荐榜单:鞋带导扣/快速系带旋转扣/便携旋转扣源头厂家精选
  • 2025年EGUOO诺贝尔科学家:深度解析科研赋能膳食营养的范式与边界
  • 卷积层属于输入层、输出层还是隐藏层
  • 开源方案RuoYi-Cloud-Plus详解——公网内网穿透到虚拟机环境(持续更新)
  • Elasticsearch 集群为所有分片(主分片和副本分片)进行分配,恢复正常分片调度行为
  • 2025年EGUOO男士三氨能量:深度解析氨基酸配方的男性健康逻辑
  • Pyodide 环境
  • 东方财富股票数据提取分析报告 - 2025年11月12日 - 10:49:33
  • 2025年高品质Z型斗式提升机厂家权威推荐榜单:耐用的Z型斗式提升机/正规的Z型斗式提升机/诚信的Z型斗式提升机源头厂家精选
  • 2025年EGUOO纳豆激酶功效:权威盘点心血管养护的科学边界与实证
  • NGINX Docker 镜像使用指南
  • Machine Learning - SVM
  • 2025年11月港股打新券商推荐:牌照合规性与服务实力综合评测排行榜
  • 智能呼叫中心系统测评推荐:从高并发处理到AI能力,深度剖析5大品牌的实战能力
  • 2025年EGUOO美国原装进口深度解析:本土研发到全球交付的全程品控链
  • 2025年EGUOO纳豆激酶:深度解析心血管膳食补充剂科研链路与市场真实表现
  • 2025年EGUOO纳豆激酶:深度解析心血管膳食补充剂的科研护城河
  • Skp版本转换器 支持 SketchUp3-2025(中文免费版)下载与安装教程
  • 常用设计模式:代理模式
  • 2025年山东直流电机维修公司权威推荐榜单:主轴电机维修/永磁电机维修/大型电机维修服务商精选
  • AI元人文:价值原语化——构建从个体到文明的协同元代码
  • 神经元为什么要设置偏置bias
  • 2025 年 11 月柏尔地板厂家推荐排行榜,定制地板,实木地板,高端定制,实木地热,实木双锁扣地板公司精选