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

使用 Docker 部署 Elasticsearch:详细步骤与原创指南

使用 Docker 部署 Elasticsearch:详细步骤与原创指南

Elasticsearch 是一个强大的分布式搜索引擎,而 Docker 则是一种轻量级的容器化技术。将 Elasticsearch 部署在 Docker 容器中,可以简化部署流程,提高环境一致性,并方便地进行版本管理和扩展。

在这里插入图片描述

一、环境准备

  • Docker 版本: 18.06 或更高版本
  • Docker Compose 版本: 1.22.0 或更高版本 (可选)

二、部署步骤

1. 拉取 Elasticsearch 镜像

使用以下命令从 Docker Hub 拉取 Elasticsearch 官方镜像:

docker pull docker.elastic.co/elasticsearch/elasticsearch:7.10.0

2. 运行 Elasticsearch 容器

使用以下命令运行 Elasticsearch 容器:

docker run -d --name elasticsearch -p 9200:9200 -p 9300:9300 -e "discovery.type=single-node" docker.elastic.co/elasticsearch/elasticsearch:7.10.0

参数说明:

  • -d: 后台运行容器
  • --name elasticsearch: 指定容器名称为 elasticsearch
  • -p 9200:9200: 将容器内的 9200 端口映射到宿主机的 9200 端口,用于 HTTP 通信
  • -p 9300:9300: 将容器内的 9300 端口映射到宿主机的 9300 端口,用于节点间通信
  • -e "discovery.type=single-node": 设置 Elasticsearch 为单节点模式

3. 验证部署

打开浏览器,访问 http://localhost:9200,如果看到类似以下的 JSON 信息,说明 Elasticsearch 部署成功:

{
  "name" : "node-1",
  "cluster_name" : "docker-cluster",
  "cluster_uuid" : "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
  "version" : {
    "number" : "7.10.0",
    "build_flavor" : "default",
    "build_type" : "docker",
    "build_hash" : "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
    "build_date" : "2020-11-05T10:36:47.660Z",
    "build_snapshot" : false,
    "lucene_version" : "8.7.0",
    "minimum_wire_compatibility_version" : "6.8.0",
    "minimum_index_compatibility_version" : "6.0.0-beta1"
  },
  "tagline" : "You Know, for Search"
}

三、使用 Docker Compose 部署 (可选)

为了更方便地管理 Elasticsearch 容器,可以使用 Docker Compose 进行部署。

1. 创建 docker-compose.yml 文件

version: '3.7'

services:
  elasticsearch:
    image: docker.elastic.co/elasticsearch/elasticsearch:7.10.0
    container_name: elasticsearch
    environment:
      - discovery.type=single-node
    ports:
      - 9200:9200
      - 9300:9300
    volumes:
      - esdata:/usr/share/elasticsearch/data

volumes:
  esdata:

2. 启动 Elasticsearch 容器

docker-compose.yml 文件所在目录下,执行以下命令启动 Elasticsearch 容器:

docker-compose up -d

四、数据持久化

为了防止容器重启后数据丢失,可以将 Elasticsearch 的数据目录挂载到宿主机的目录中。

1. 创建数据目录

在宿主机上创建一个目录用于存储 Elasticsearch 数据,例如 /data/elasticsearch

2. 挂载数据目录

在运行容器时,使用 -v 参数将宿主机的数据目录挂载到容器内的 /usr/share/elasticsearch/data 目录:

docker run -d --name elasticsearch -p 9200:9200 -p 9300:9300 -e "discovery.type=single-node" -v /data/elasticsearch:/usr/share/elasticsearch/data docker.elastic.co/elasticsearch/elasticsearch:7.10.0

http://www.kler.cn/a/550067.html

相关文章:

  • 2025年人工智能十大趋势:AI如何塑造未来?
  • 有关表单autocomplete = “off“ 失效问题解决方案
  • Android MVC、MVP、MVVM、MVI的架构的区别
  • 武汉火影数字|VR大空间内容制作:开启沉浸式体验新时代
  • Python基础-使用dict和set
  • 走出养生误区,拥抱健康生活
  • 亿发解析2025年新零售趋势:全场景融合与深度数字化
  • nlp|微调大语言模型初探索(2),训练自己的聊天机器人
  • 如何设置爬虫的IP代理?
  • BSD协议栈:多播
  • 机舱卫生和空气质量改善
  • opensuse [Linux] 系统挂在新的机械硬盘
  • STM32创建静态库lib
  • YOLOv8-OBB:利用TensorRT编写Plugin,CUDA编写后处理相关核函数,TensorRT和CUDA代码分析
  • 网络安全配置截图
  • 【机器学习】向量化使得简单线性回归性能提升
  • IDEA使用codeGPT集合deepseek
  • TLS和SSL的区别
  • 《探秘AI绿色计算:降低人工智能硬件能耗的热点技术》
  • Linux(Centos 7.6)命令详解:head