讲师中心 微信公众号
AI工具推荐 视频效率加速

Mac怎么安装Elasticsearch_Mac ES搜索引擎安装配置教程【进阶】

千雪吖_8088

千雪吖_8088

发布时间:2026-03-25 19:37:22

|

852人浏览过

|

来源于php中文网

原创

Mac上安装Elasticsearch有三种主流方式:一是用Homebrew一键安装,适合快速部署;二是官网下载压缩包手动安装,便于定制配置;三是Docker容器化安装,实现环境隔离。

mac怎么安装elasticsearch_mac es搜索引擎安装配置教程【进阶】

一、使用Homebrew一键安装

Homebrew是Mac平台最便捷的包管理工具,适用于快速部署Elasticsearch且便于后续版本管理。该方式无需手动解压与路径配置,安装后服务可直接通过系统级命令启停。

1、确认Homebrew已安装:在终端执行brew --version,若返回版本号则跳过安装;否则执行/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"完成安装。

2、执行Elasticsearch安装命令:brew install elasticsearch,等待下载与编译完成。

3、启动服务:brew services start elasticsearch,服务将后台运行并监听localhost:9200。

4、验证安装:在终端运行curl -X GET http://localhost:9200/,返回包含"name"、"cluster_name"和"tagline": "You Know, for Search"的JSON响应即为成功。

二、官网下载压缩包手动安装

该方式提供对配置文件、JVM参数及插件目录的完全控制权,适合需要定制化部署或调试集群场景。安装包自带config/目录,避免brew安装时配置路径分散的问题。

1、访问https://www.elastic.co/downloads/elasticsearch,选择与当前macOS架构匹配的.tar.gz版本(如Apple Silicon推荐ARM64版)。

2、下载完成后解压至目标目录,例如:tar -xzf elasticsearch-8.12.2-darwin-aarch64.tar.gz -C ~/Applications/。

3、进入解压后目录,修改config/elasticsearch.yml:取消注释并设置network.host: localhost,确保http.port: 9200未被注释。

4、赋予执行权限:chmod +x bin/elasticsearch,然后启动:./bin/elasticsearch -d(-d表示后台运行)。

5、检查进程:ps aux | grep elasticsearch,确认Java进程存在;再用curl http://localhost:9200/验证响应。

三、Docker容器化安装

Docker方式实现环境隔离,避免Java版本冲突与系统依赖干扰,特别适用于多版本ES共存或CI/CD集成场景。镜像由Elastic官方维护,保证一致性与安全性。

1、确保Docker Desktop已在Mac上运行,执行docker --version确认可用。

2、拉取最新稳定版镜像:docker pull docker.elastic.co/elasticsearch/elasticsearch:8.12.2。

3、创建本地数据卷以持久化索引:docker volume create es-data。

4、运行容器并映射端口与配置:docker run -d -p 9200:9200 -p 9300:9300 -e "discovery.type=single-node" -e "xpack.security.enabled=false" -v es-data:/usr/share/elasticsearch/data docker.elastic.co/elasticsearch/elasticsearch:8.12.2。

5、等待约30秒后执行curl -X GET "http://localhost:9200/?pretty",返回结构化JSON即表示容器内ES服务就绪。

四、解决启动失败的常见配置修正

Elasticsearch默认启用安全特性与机器学习模块,在开发环境常因权限或资源限制导致启动中断。以下操作需在config/elasticsearch.yml中进行,每项修改后必须重启服务。

1、禁用X-Pack安全模块:在配置文件末尾添加xpack.security.enabled: false,顶格书写,冒号后保留一个空格。

2、关闭机器学习功能:添加xpack.ml.enabled: false,防止因未授权License触发拒绝启动。

3、调整JVM堆内存:编辑config/jvm.options,将-Xms4g和-Xmx4g改为-Xms1g和-Xmx1g,适配Mac本地开发资源限制。

4、允许跨域访问(供head插件或前端调试):在elasticsearch.yml中添加http.cors.enabled: true与http.cors.allow-origin: "*"两行。

5、若提示max virtual memory areas vm.max_map_count [65530] is too low,需在终端执行sudo sysctl -w vm.max_map_count=262144并写入/etc/sysctl.conf永久生效。

五、验证与基础交互测试

安装完成后需验证核心API可达性与索引操作能力,确保后续Kibana、Logstash或应用接入无阻。所有测试均基于HTTP REST接口,无需额外客户端。

1、检查集群健康状态:curl -X GET "http://localhost:9200/_cat/health?v",返回status字段为green表示节点正常。

2、列出全部索引:curl -X GET "http://localhost:9200/_cat/indices?v",初始应返回空结果或仅.security等系统索引。

3、创建测试索引test-index:curl -X PUT "http://localhost:9200/test-index" -H "Content-Type: application/json" -d'{"settings":{"number_of_shards":1}}'。

4、插入一条文档:curl -X POST "http://localhost:9200/test-index/_doc/1" -H "Content-Type: application/json" -d'{"title":"Mac ES Install Guide","version":"8.12.2"}'。

5、执行搜索验证:curl -X GET "http://localhost:9200/test-index/_search?q=title:Mac",响应中"hits.total.value"应为1,且_source包含原始内容。

热门AI工具

更多
Atoms
Atoms Hot

Atoms是一款AI智能体工具,第一支自动构建真实业务的 AI 团队。

豆包大模型

豆包大模型是一款由字节跳动推出的企业级大语言模型服务平台。

DeepSeek

DeepSeek是一款面向对话、写作、编程和推理场景的AI大模型工具。

WorkBuddy

一款AI办公效率工具,主要用于腾讯云推出的AI原生桌面智能体工作台,适合需要提升相关任务效率的用户。

Laper
Laper Hot

Laper是专为编剧、导演和制片人推出的 AI 原生剧本创作工具。

立刻MV
立刻MV Hot

立刻MV是一款AI文本写作工具,AI 音乐视频(MV)创作工具。

火山引擎

火山引擎是一款面向企业的云计算与AI服务平台。

PixPix
PixPix Hot

PixPix是一款面向电商视觉生产的AI商品图生成工具。

VibeKnow
VibeKnow Hot

一款AI视频创作工具,主要用于全球首个AI知识视频创作平台,文档、文章、网页,一键生成视频,适合需要提升相关任务效率的用户。

相关专题

更多
json数据格式
json数据格式

JSON是一种轻量级的数据交换格式。本专题为大家带来json数据格式相关文章,帮助大家解决问题。

2175

2023.08.07

json是什么
json是什么

JSON是一种轻量级的数据交换格式,具有简洁、易读、跨平台和语言的特点,JSON数据是通过键值对的方式进行组织,其中键是字符串,值可以是字符串、数值、布尔值、数组、对象或者null,在Web开发、数据交换和配置文件等方面得到广泛应用。本专题为大家提供json相关的文章、下载、课程内容,供大家免费下载体验。

3422

2023.08.23

jquery怎么操作json
jquery怎么操作json

操作的方法有:1、“$.parseJSON(jsonString)”2、“$.getJSON(url, data, success)”;3、“$.each(obj, callback)”;4、“$.ajax()”。更多jquery怎么操作json的详细内容,可以访问本专题下面的文章。

1156

2023.10.13

go语言处理json数据方法
go语言处理json数据方法

本专题整合了go语言中处理json数据方法,阅读专题下面的文章了解更多详细内容。

3919

2025.09.10

curl_exec
curl_exec

curl_exec函数是PHP cURL函数列表中的一种,它的功能是执行一个cURL会话。给大家总结了一下php curl_exec函数的一些用法实例,这个函数应该在初始化一个cURL会话并且全部的选项都被设置后被调用。他的返回值成功时返回TRUE, 或者在失败时返回FALSE。

3703

2023.06.14

linux常见下载安装工具
linux常见下载安装工具

linux常见下载安装工具有APT、YUM、DNF、Snapcraft、Flatpak、AppImage、Wget、Curl等。想了解更多linux常见下载安装工具相关内容,可以阅读本专题下面的文章。

855

2023.10.30

硬盘接口类型介绍
硬盘接口类型介绍

硬盘接口类型有IDE、SATA、SCSI、Fibre Channel、USB、eSATA、mSATA、PCIe等等。详细介绍:1、IDE接口是一种并行接口,主要用于连接硬盘和光驱等设备,它主要有两种类型:ATA和ATAPI,IDE接口已经逐渐被SATA接口;2、SATA接口是一种串行接口,相较于IDE接口,它具有更高的传输速度、更低的功耗和更小的体积;3、SCSI接口等等。

3168

2023.10.19

PHP接口编写教程
PHP接口编写教程

本专题整合了PHP接口编写教程,阅读专题下面的文章了解更多详细内容。

5049

2025.10.17

Gradle插件开发入门教程
Gradle插件开发入门教程

本专题介绍Gradle插件开发的基本流程,涵盖插件类编写、自定义任务注册、扩展参数设计和插件应用方法,帮助你理解插件如何组织构建逻辑,减少多个项目之间的重复配置。

60

2026.10.22

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
安装 Xdebug 并配置 phpstorm
安装 Xdebug 并配置 phpstorm

共1课时 | 190人学习

PostgreSQL 教程
PostgreSQL 教程

共48课时 | 20.6万人学习

好课诞生记
好课诞生记

共20课时 | 7.2万人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn