使用 Docker 安装 Elasticsearch (本地环境 M1 Mac)

Elasticsearch+kibana下载安装

  1. docker pull elasticsearch:7.16.2
  2. docker run --name es -d -e ES_JAVA_OPTS="-Xms512m -Xmx512m" -e "discovery.type=single-node" -p 9200:9200 -p 9300:9300 elasticsearch:7.16.2
  3. docker pull kibana:7.16.2
  4. docker run --name kibana -e
    ELASTICSEARCH_HOSTS=http://host.docker.internal:9200 -p 5601:5601 -d
    kibana:7.16.2

挂载目录

将 Docker 中的 Elasticsearch 目录挂载到本地,如下命令依次执行

javascript 复制代码
docker run --name es -d -e ES_JAVA_OPTS="-Xms512m -Xmx512m" -e "discovery.type=single-node" -p 9200:9200 -p 9300:9300 elasticsearch:7.16.2
javascript 复制代码
docker cp -a es:/usr/share/elasticsearch/config/ /opt/es 
docker cp -a es:/usr/share/elasticsearch/data/ /opt/es
docker cp -a es:/usr/share/elasticsearch/logs/ /opt/es
docker cp -a es:/usr/share/elasticsearch/plugins/ /opt/es
javascript 复制代码
docker stop es 
docker rm es

运行 Elasticsearch

javascript 复制代码
docker run -p 9200:9200 -p 9300:9300 \                   
--privileged=true --name es \
-e "discovery.type=single-node" \
-e ES_JAVA_OPTS="-Xms256m -Xmx256m" \
-v /opt/es/plugins:/usr/share/elasticsearch/plugins \
-v /opt/es/data:/usr/share/elasticsearch/data \
-v /opt/es/logs:/usr/share/elasticsearch/logs \
-v /opt/es/config:/usr/share/elasticsearch/config \
-d elasticsearch:7.16.2

发现报错(没权限访问挂载目录)

配置 Docker 允许访问的共享文件夹 /opt/es

安装 Ik 分词器

将下载好的 IK 包解压丢到 /opt/es/plugins 文件夹下面即可。下载地址

再次启动发现又报错了(rf .DS_Store文件错误)

切换到 /opt/es/plugins 目录下

javascript 复制代码
 cd /opt/es/plugins 

删除 DS_Store 文件

javascript 复制代码
rm .DS_Store 

接着执行

javascript 复制代码
docker run -p 9200:9200 -p 9300:9300 \                   
--privileged=true --name es \
-e "discovery.type=single-node" \
-e ES_JAVA_OPTS="-Xms256m -Xmx256m" \
-v /opt/es/plugins:/usr/share/elasticsearch/plugins \
-v /opt/es/data:/usr/share/elasticsearch/data \
-v /opt/es/logs:/usr/share/elasticsearch/logs \
-v /opt/es/config:/usr/share/elasticsearch/config \
-d elasticsearch:7.16.2

成功启动

相关推荐
小猿姐1 小时前
唯品会大规模数据库云原生实践:基于 KubeBlocks 管理数千实例的统一运维之路
运维·elasticsearch·云原生
Mintimate12 小时前
WorkBuddy 上手: 让脚本项目 Homebrew CN 变成会排障的 Agent
macos·边缘计算·agent
Elasticsearch18 小时前
使用 Elastic Agent Builder 和 Sarvam AI 构建多语言语音 agent
elasticsearch
lichenyang4532 天前
Docker 学习笔记(五):Docker Compose,用一个 YAML 启动前端、后端和 MongoDB
docker
lichenyang4532 天前
Docker 学习笔记(四):Dockerfile,把项目打成自己的镜像
docker·容器
lichenyang4532 天前
Docker 学习笔记(三):Docker 网络、bridge、子网和容器互通
docker·容器
lichenyang4532 天前
Docker 学习笔记(二):docker run 的参数到底在控制什么?
docker·容器
fthux2 天前
如果你用 Mac,那你可能需要 Noti Shift
macos·开源·github
counterxing5 天前
最近发现一个 Mac 工具,有点像把 Raycast、语音输入法、截图和录屏塞到了一起
macos·ai编程·claude
武子康5 天前
调查研究-197 FAISS vs Elasticsearch 全面对比:从向量检索、全文搜索到 RAG 选型指南
人工智能·elasticsearch·agent