通过docker-compose在本地快速部署一个ElasticSearch(保姆级教程)

对于ElasticSearch的安装,可以通过docker-compose在本地快速部署一个

这是一段博文的原话

可是对于没接触过ElasticSearch也没接触过docker的人,这个太难了,干脆花时间速成了一下,写一篇博客希望能给未来的萌新引路

1. 环境准备

  • 操作系统: Windows

  • Docker: 确保 Docker 已正确安装并运行。

  • Elasticsearch 版本: 7.16.1

下载docker compose

下载链接: https://docs.docker.com/desktop/install/windows-install/#where-to-go-next

(需要魔法)

如何查看自己的系统架构(知道的可以直接往下滑)

对于如何确定自己是x86或者x64或者是arm架构,只需要:

方法一:系统信息

  1. 打开系统信息

    1. 按下 Windows + R 键,输入 msinfo32,然后按下 Enter
  2. 查看处理器信息

    1. 在系统信息窗口中,找到"系统摘要"下的"处理器"一项。

    2. 如果处理器信息中包含 "x86" 或 "x64",则表示你的处理器是基于x86架构的(x64是x86的64位版本)。

    3. 如果包含 "ARM",则表示你的处理器是基于ARM架构的。

我这里就是x64因此选择下载x64版本

方法二:命令行查询

  1. 打开 命令提示符

    1. 按下 Windows + R 键,输入 cmd,然后按下 Enter
  2. 运行以下命令

    复制代码

    echo %PROCESSOR_ARCHITECTURE%

  3. 查看输出结果

    1. 如果输出结果是 x86AMD64,则表示你的处理器是基于x86架构的(AMD64 是x64的另一种表示)。

    2. 如果输出结果是 ARMARM64,则表示你的处理器是基于ARM架构的。

AMD64就是x64,也是下载第一个版本

下载完成以后安装登录(登录也需要魔法)

存放yml文件

找个准备存放yml文件的文件夹,打开cmd(这里有个小技巧)

比如我准备在这个文件夹打开cmd

先单击这个地方

输入cmd回车

就出现了命令行界面

执行以下命令

mkdir my-elasticsearch

notepad docker-compose.yml

然后会打开记事本询问你是否需要创建文件,点击 "是"

粘贴以下代码

version: "3"
services:
  elasticsearch:
    image: elasticsearch:7.16.1
    ports:
      - "9200:9200"
      - "9300:9300"
    environment:
      node.name: es
      cluster.name: elasticsearch
      discovery.type: single-node  
      ES_JAVA_OPTS: -Xms4096m -Xmx4096m
    volumes:
      - ./data:/usr/share/elasticsearch/data
    deploy:
      resources:
        limits:
          cpus: "4"
          memory: 5G
        reservations:
          cpus: "1"
          memory: 2G
    restart: always

ctrl+s保存

现在回到cmd窗口手动拉取镜像

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

这个大概有一个G,慢慢等,中间等待时间我去吃了个饭回来看就好了

运行启动

docker-compose up -d

运行以下命令来确保 Elasticsearch 容器正在运行:

docker ps

可以看到 Elasticsearch 容器正在运行:

也可以打开docker桌面端,发现正在运行

打开

http://localhost:9200/

可以看到以下输出

同样可以使用 curl 命令测试 Elasticsearch API,例如:

curl -X GET "localhost:9200/_cluster/health?pretty"

可以看到集群健康状态的输出。

复制代码
至此结束,记得多多点赞收藏哦
相关推荐
codelife3211 分钟前
在Docker容器中执行命令
容器
【D'accumulation】7 分钟前
典型的MVC设计模式:使用JSP和JavaBean相结合的方式来动态生成网页内容典型的MVC设计模式
java·设计模式·mvc
petaexpress10 分钟前
常用的k8s容器网络模式有哪些?
网络·容器·kubernetes
试行22 分钟前
Android实现自定义下拉列表绑定数据
android·java
茜茜西西CeCe28 分钟前
移动技术开发:简单计算器界面
java·gitee·安卓·android-studio·移动技术开发·原生安卓开发
救救孩子把33 分钟前
Java基础之IO流
java·开发语言
小菜yh34 分钟前
关于Redis
java·数据库·spring boot·redis·spring·缓存
时光追逐者35 分钟前
分享6个.NET开源的AI和LLM相关项目框架
人工智能·microsoft·ai·c#·.net·.netcore
宇卿.40 分钟前
Java键盘输入语句
java·开发语言
浅念同学41 分钟前
算法.图论-并查集上
java·算法·图论