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

使用 Docker 安装 Elastic Stack 并重置本地密码

Elastic Stack(也被称为 ELK Stack)是一个非常强大的工具套件,用于实时搜索、分析和可视化大量数据。Elastic Stack 包括 Elasticsearch、Logstash、Kibana 等组件。本文将展示如何使用 Docker 安装 Elasticsearch 并重置本地用户密码。

### 1. 环境准备

在开始之前,请确保您的系统已经安装了 Docker 和 Docker Compose。如果没有安装,请参考官方文档进行安装:

- [Docker 安装指南](https://docs.docker.com/get-docker/)
- [Docker Compose 安装指南](https://docs.docker.com/compose/install/)

### 2. 下载并运行 Elasticsearch Docker 镜像

首先,我们可以使用 Docker 拉取官方的 ElasticSearch 镜像并启动容器。

```bash
# 拉取官方 ElasticSearch 镜像
docker pull docker.elastic.co/elasticsearch/elasticsearch:8.6.0
```

接着,我们可以创建一个 Docker 容器并运行 ElasticSearch 实例。

```bash
# 启动一个 Elasticsearch 容器
docker run -d --name elasticsearch \
  -p 9200:9200 -p 9300:9300 \
  -e "discovery.type=single-node" \
  -e "ELASTIC_PASSWORD=changeme" \
  docker.elastic.co/elasticsearch/elasticsearch:8.6.0
```

- `-d`:让容器在后台运行。
- `--name elasticsearch`:为容器指定一个名称。
- `-p 9200:9200`:将容器的 9200 端口映射到主机的 9200 端口,Elasticsearch 的默认 HTTP 服务端口。
- `-p 9300:9300`:将容器的 9300 端口映射到主机的 9300 端口,Elasticsearch 的节点间通讯端口。
- `-e "discovery.type=single-node"`:启用单节点模式。
- `-e "ELASTIC_PASSWORD=changeme"`:设置初始的超级用户 `elastic` 的密码。

启动完成后,您可以通过访问 `http://localhost:9200` 来检查 Elasticsearch 是否正常运行。

```bash
# 测试是否能够连接到 Elasticsearch
curl -u elastic:changeme http://localhost:9200
```

### 3. 使用 Docker 配置和重置本地密码

接下来,我们将介绍如何重置本地用户(如 `elastic`)的密码。在 Elasticsearch 中,安全功能是启用的,所以如果您使用默认密码 `changeme`,您可以按照以下步骤更改密码。

#### 步骤 1:进入容器

首先,进入运行中的 Elasticsearch 容器。

```bash
docker exec -it elasticsearch /bin/bash
```

#### 步骤 2:使用 `elasticsearch-reset-password` 工具重置密码

Elasticsearch 提供了一个 `elasticsearch-reset-password` 工具,可以用来重置用户密码。

```bash
# 重置 elastic 用户的密码
bin/elasticsearch-reset-password -u elastic
```

执行命令后,您会看到类似如下的提示:

```bash
This will reset the password of the elastic user to a random value.
Are you sure you want to continue? [y/N]y
```

输入 `y` 继续操作,密码将会被重置,并显示新的密码。

#### 步骤 3:查看重置后的密码

重置成功后,新的密码会显示在控制台中。记住这个密码,稍后用于访问 Elasticsearch。

```bash
# 退出容器
exit
```

### 4. 使用新的密码登录 Elasticsearch

现在,您可以使用新密码登录到 Elasticsearch 实例。

```bash
curl -u elastic:<new-password> http://localhost:9200
```

将 `<new-password>` 替换为您刚刚获得的密码。如果一切正常,您应该会看到类似下面的响应:

```json
{
  "name" : "elasticsearch",
  "cluster_name" : "elasticsearch",
  "cluster_uuid" : "ABC123",
  "version" : {
    "number" : "8.6.0",
    "build_flavor" : "default",
    "build_type" : "deb",
    "build_hash" : "ABC123",
    "build_date" : "2025-04-18T12:00:00.000Z",
    "build_snapshot" : false,
    "lucene_version" : "8.9.0",
    "minimum_wire_compatibility_version" : "8.6.0",
    "minimum_index_compatibility_version" : "8.6.0"
  },
  "tagline" : "You Know, for Search"
}
```

### 5. 使用 Docker Compose 配置和启动 Elasticsearch

如果你希望使用 Docker Compose 来管理 Elasticsearch 服务,可以创建一个 `docker-compose.yml` 文件来简化管理。

#### 创建 `docker-compose.yml`

```yaml
version: '3'
services:
  elasticsearch:
    image: docker.elastic.co/elasticsearch/elasticsearch:8.6.0
    container_name: elasticsearch
    environment:
      - discovery.type=single-node
      - ELASTIC_PASSWORD=changeme
    ports:
      - "9200:9200"
      - "9300:9300"
    volumes:
      - esdata:/usr/share/elasticsearch/data
    networks:
      - elastic_network

volumes:
  esdata:

networks:
  elastic_network:
    driver: bridge
```

#### 启动服务

```bash
docker-compose up -d
```

然后,您就可以按照之前的步骤重置密码。

### 6. 总结

通过 Docker 安装 Elasticsearch 和重置本地密码非常简单。利用 Docker 的便利性,我们可以快速启动和配置 Elasticsearch。通过 Docker Compose 管理 Elastic Stack 服务,让您的开发和测试环境更加简洁高效。

相关文章:

使用 Docker 安装 Elastic Stack 并重置本地密码

Elastic Stack&#xff08;也被称为 ELK Stack&#xff09;是一个非常强大的工具套件&#xff0c;用于实时搜索、分析和可视化大量数据。Elastic Stack 包括 Elasticsearch、Logstash、Kibana 等组件。本文将展示如何使用 Docker 安装 Elasticsearch 并重置本地用户密码。 ###…...

利用 Deepseek 和 Mermaid 画流程图

提示词 你是一个产品经理&#xff0c;请绘制一个报名比赛的流程图&#xff0c;要求生成符合Mermaid语法的代码&#xff0c;具体要求如下&#xff1a; 1.注册账号 2.填写报名信息 3.参加比赛 4.查看比赛结果 生成的结果 flowchart TDA([开始]) --> B[注册账号]B --> C{账…...

系统架构设计师:系统架构概述案例分析与简答题、详细解析与评分要点

10道系统架构概述知识体系案例分析与简答题&#xff0c;涵盖架构设计原则、质量属性、演化过程、评估方法等核心考点&#xff0c;并附详细解析与评分要点&#xff1a; 一、案例分析题&#xff08;5题&#xff09; 1. 电商系统高并发场景下的架构设计 背景&#xff1a;某电商平…...

学习笔记: Mach-O 文件

“结构决定性质,性质决定用途”。如果不了解结构,是很难真正理解的。 通过一个示例的可执行文件了解Mach-O文件的结构 Mach-O基本结构 Header: &#xff1a;文件类型、目标架构类型等Load Commands&#xff1a;描述文件在虚拟内存中的逻辑结构、布局Data: 在Load commands中…...

图论-BFS搜索图/树-最短路径问题的解决

续上篇~图论--DFS搜索图/树-CSDN博客 先看第一次学习的博客&#xff01;&#xff01;&#x1f447;&#x1f447;&#x1f447;&#x1f447; &#x1f449; 有一些问题是广搜 和 深搜都可以解决的&#xff0c;例如岛屿问题&#xff0c;这里我们记dfs的写法就好啦&#xff0c;…...

【uniapp】vue2 使用 Vuex 状态管理

创建store文件夹&#xff1a;store/index.js // index.js import Vue from vue import Vuex from vuex import address from ./modules/address.jsVue.use(Vuex)const store new Vuex.Store({modules: {address} })export default store 创建modules文件夹&#xff1a;modul…...

vcpkg缓存问题研究

vcpkg缓存问题研究 问题描述解决方案官网给出的方案其实并不是大多数人语境中的“清除缓存”实际解决方案 问题描述 使用vcpkg管理c的库的时候&#xff0c;vcpkg会在c盘某些地方缓存下载的库&#xff0c;如果安装的库过多&#xff0c;这个缓存文件夹会过大占用磁盘空间&#x…...

个人自用-导入安装Hexo

因为本人原来就有备份好的资料&#xff0c;所以重新安装起来会很方便&#xff0c;这个教程也只适合我自己用 但是所有的命令行都要在Git的命令行里面使用&#xff08;因为我就是这样操作的&#xff09; 1 安装Git Git的官网 Git git --version 这个是查看Git的版本 git --…...

《AI大模型应知应会100篇》第26篇:Chain-of-Thought:引导大模型进行步骤推理

第26篇&#xff1a;Chain-of-Thought&#xff1a;引导大模型进行步骤推理 摘要 在自然语言处理&#xff08;NLP&#xff09;和人工智能领域&#xff0c;如何让大模型像人类一样进行逐步推理是一个核心挑战。Chain-of-Thought (思维链) 技术的出现为这一问题提供了强有力的解决…...

大模型API中转平台选择指南:如何找到优质稳定的服务

在人工智能快速发展的今天&#xff0c;大模型的应用已经渗透到各个领域。无论是开发智能应用的技术团队&#xff0c;还是希望通过AI提升效率的企业&#xff0c;都离不开大模型API的支持。然而&#xff0c;市场上的大模型API中转服务良莠不齐&#xff0c;层层转包的中间商模式不…...

STM32单片机入门学习——第43节: [12-3] 读写备份寄存器实时时钟

写这个文章是用来学习的,记录一下我的学习过程。希望我能一直坚持下去,我只是一个小白,只是想好好学习,我知道这会很难&#xff0c;但我还是想去做&#xff01; 本文写于&#xff1a;2025.04.19 STM32开发板学习——第43节: [12-3] 读写备份寄存器&实时时钟 前言开发板说明…...

零基础上手Python数据分析 (18):Matplotlib 基础绘图 - 让数据“开口说话”

写在前面 —— 告别枯燥数字,拥抱可视化力量,掌握 Matplotlib 绘图基础 欢迎来到 “高效数据分析实战指南:Python零基础入门” 专栏! 经过前面 Pandas 模块的学习和实战演练,我们已经掌握了使用 Python 和 Pandas 进行数据处理、清洗、整合、分析的核心技能。 我们能够从…...

【网络原理】UDP协议

目录 一. UDP 报文格式 &#xff08;1&#xff09;端口号 &#xff08;2&#xff09;UDP长度 &#xff08;3&#xff09;校验和 UDP协议属于传输层协议&#xff0c;由操作系统内核内置 一. UDP 报文格式 UDP数据报&#xff1a;无连接&#xff0c;不可靠传输&#xff0c;面…...

云服务器和本地打通内网端口方式

如何通过云服务器FRP 配置让树莓派板子运行的服务端程序被客户端访问&#xff1f; 要通过 云服务器 FRP 内网穿透&#xff0c;让公网客户端访问你 树莓派运行的 Qt 服务端程序&#xff0c;下面是详细的完整步骤&#xff0c;适合你现在的场景&#xff1a; 云服务器安装并启动…...

HCIP OSPF综合实验

1.网络拓扑图 实验要求&#xff1a; 2.需求分析 IP规划&#xff1a; 对每个路由器配置ospf并用172.16.0.0/16网段进行划分&#xff0c;项目中一共有area0 - area4五个ospf区域加一个rip网段&#xff0c;所以我们在172.16.0.0/16选出6个网段 ISP 对r5只能配ip可以把他看成外…...

tensor.repeat和tensor.repeat_interleave

tensor.repeat 在指定维度上整体复制张量内容&#xff1a; x torch.arange(6).reshape(2,3) print(x) print(x.repeat(2,1))上述代码的执行结果为&#xff1a; tensor([[0, 1, 2],[3, 4, 5]]) tensor([[0, 1, 2],[3, 4, 5],[0, 1, 2],[3, 4, 5]])可以看到&#xff0c;x.rep…...

实现批量图片文字识别(python+flask+EasyOCR)

话不多说,向上效果图 1)先说框架版本 为什么要先说框架版本呢,因为我在各种版本中尝试了两天,总算确定了如下版本适合我,至于其他的版本,各位自己去尝试 python 3.9.7 EasyOCR 1.7.2 flask 3.0.3 2)执行操作效果图 2.1)多选文件 2.2)图片预览 2.3)提取选中文件 2.4)提取所有文…...

Vue3+TS中svg图标的使用

安装依赖 pnpm i vite-plugin-svg-icons -D配置引入 vite.config.ts ... import { createSvgIconsPlugin } from vite-plugin-svg-icons import path from node:pathconst svgIconsPlugin createSvgIconsPlugin({iconDirs: [path.resolve(process.cwd(), src/assets/icons)]…...

【java实现+4种变体完整例子】排序算法中【堆排序】的详细解析,包含基础实现、常见变体的完整代码示例,以及各变体的对比表格

以下是堆排序的详细解析&#xff0c;包含基础实现、常见变体的完整代码示例&#xff0c;以及各变体的对比表格&#xff1a; 一、堆排序基础实现 原理 基于二叉堆结构&#xff08;最大堆&#xff09;&#xff0c;通过以下步骤实现排序&#xff1a; 构建最大堆&#xff1a;将…...

WhatTheDuck:一个基于浏览器的CSV查询工具

今天给大家介绍一个不错的小工具&#xff1a;WhatTheDuck。它是一个免费开源的 Web 应用程序&#xff0c;允许用户上传 CSV 文件并针对其内容执行 SQL 查询分析。 WhatTheDuck 支持 SQL 代码自动完成以及语法高亮。 WhatTheDuck 将上传的数据存储为 DuckDB 内存表&#xff0c;继…...

从数据处理方式,系统可扩展性和处理性能三方面比较管道过滤器风格和仓储风格

在软件架构设计中&#xff0c;管道-过滤器风格和仓储风格是两种典型的数据处理模式&#xff0c;它们在数据处理方式、系统可扩展性和处理性能上有显著差异。以下从三个方面进行对比&#xff1a; 1. 数据处理方式 方面管道-过滤器风格仓储风格数据流动数据以流&#xff08;Stre…...

工控系统前端设计(pyqt)

题目源自&#xff1a;白月黑羽的项目实战四-[工控系统前端] 代码已上传至gitcode https://gitcode.com/m0_37662818/Industrial_Control_System_Front_End 心得体会&#xff1a;直接用组态软件或者js吧 项目亮点 tablemodel的使用&#xff0c;绑定了表格和数据风机自定义ite…...

哲学家就餐问题(避免死锁)

解决方案&#xff1a; 策略&#xff1a;奇偶哲学家拿筷子顺序不同&#xff0c;破坏循环等待。 流程&#xff1a; 偶数哲学家先左后右。 奇数哲学家先右后左。 分析&#xff1a; 无死锁&#xff0c;哲学家交替进餐&#xff0c;不同拿筷顺序避免循环等待。 实验总结 遇到的…...

剑指Offer(数据结构与算法面试题精讲)C++版——day15

剑指Offer&#xff08;数据结构与算法面试题精讲&#xff09;C版——day15 题目一&#xff1a;二叉树最低层最左边的值题目二&#xff1a;二叉树的右侧视图题目三&#xff1a;二叉树剪枝附录&#xff1a;源码gitee仓库 题目一&#xff1a;二叉树最低层最左边的值 题目&#xff…...

打靶日记 zico2: 1

一、探测靶机IP&#xff08;进行信息收集&#xff09; 主机发现 arp-scan -lnmap -sS -sV -T5 -p- 192.168.10.20 -A二、进行目录枚举 发现dbadmin目录下有个test_db.php 进入后发现是一个登录界面&#xff0c;尝试弱口令&#xff0c;结果是admin&#xff0c;一试就出 得到加…...

程序性能(1)嵌入式基准测试工具

程序性能(1)嵌入式基准测试工具 Author&#xff1a;Once Day date: 2025年4月19日 漫漫长路&#xff0c;才刚刚开始… 全系列文档查看&#xff1a;Perf性能分析_Once-Day的博客-CSDN博客 参考文档: CPU Benchmark – MCU Benchmark – CoreMark – EEMBC Embedded Micropr…...

LLM MCP模型上下文协议快速入门(for Java)

什么是MCP Model Control Protocol&#xff08;MCP&#xff09;是由AI研究机构Anthropic在2023年第二季度首次提出的新型协议规范&#xff0c;旨在解决大语言模型LLM应用中的上下文管理难题。作为LLM交互领域的创新标准&#xff0c;MCP协议在发布后短短一年内已进行了多次更新…...

STM32单片机教程:从零开始打造智能天气时钟

STM32单片机教程&#xff1a;从零开始打造智能天气时钟 大家好&#xff01;今天我想为大家详细介绍一下我们的STM32课程&#xff0c;以及如何从零基础逐步掌握单片机开发技能&#xff0c;最终实现一个完整的智能天气时钟项目。 课程面向人群 本课程主要面向那些已经通过野火…...

支持向量机(SVM):原理、应用与深入解析

内容摘要 本文深入探讨支持向量机&#xff08;SVM&#xff09;。阐述其作为分类算法在小样本、非线性及高维模式识别中的优势&#xff0c;详细介绍SVM基本概念、能解决的问题、核函数作用、对偶问题引入及常见核函数等内容&#xff0c;同时分析其优缺点&#xff0c;并与逻辑回…...

chapter32_SpringMVC与DispatcherServlet

一、简介 从本章节开始进入SpringMVC的学习&#xff0c;SpringMVC最重要的类就是DispatcherServlet DispatcherServlet的本质是一个Servlet&#xff0c;回顾一下Servlet JavaWeb就是基于Servlet的Servlet接口有5个方法Servlet实现类是HttpServlet&#xff0c;自定义的Servle…...