MacOS安装Elasticsearch(基于Docker)

0 阅读1分钟

注意:Docker Hub上的ES版本太老,要在www.docker.elastic.co/r/elasticse… 找到新版本的ES

安装Docker

进入Docker官网www.docker.com,下载Docker Desktop并安装。

之后在终端执行docker --version,应该能看到docker版本信息

PixPin_2026-05-02_15-59-23.png

安装Elasticsearch

拉取镜像

docker pull docker.elastic.co/elasticsearch/elasticsearch:9.3.4-arm64

启动容器

docker run -d \
  --name elasticsearch \
  -p 9200:9200 -p 9300:9300 \
  -e "discovery.type=single-node" \
  -e "xpack.security.enabled=false" \
  -e "xpack.security.transport.ssl.enabled=false" \
  -e "ES_JAVA_OPTS=-Xms512m -Xmx512m" \
  -e "TZ=Asia/Shanghai" \
  -v /Users/xct/volumes/elasticsearch:/usr/share/elasticsearch/data \
  docker.elastic.co/elasticsearch/elasticsearch:9.3.4-arm64

测试

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

看到类似下面的json,即成功

{
  "name" : "...""cluster_name" : "docker-cluster""version" : { ... },
  "tagline" : "You Know, for Search"
}

可视化

创建自定义docker网络让 ES 和 Kibana 容器互通

docker network create elastic-net

将现有的 ES 容器加入网络

docker network connect elastic-net elasticsearch

运行 Kibana 容器,端口映射为 5601,同一网络下容器名可直接通信

#拉镜像
docker pull docker.elastic.co/kibana/kibana:9.3.4-arm64
# 运行
docker run -d \
  --name kibana \
  --network elastic-net \
  -p 5601:5601 \
  -e "ELASTICSEARCH_HOSTS=http://elasticsearch:9200" \
  docker.elastic.co/kibana/kibana:9.3.4-arm64

访问http://localhost:5601,可看到

PixPin_2026-05-02_18-11-20.png

常用的管理命令

# 查看容器状态
docker ps | grep elasticsearch
# 查看日志
docker logs elasticsearch
# 停止容器
docker stop elasticsearch
# 启动已存在的容器
docker start elasticsearch
# 重启容器
docker restart elasticsearch
# 删除容器(数据仍在 /Users/xct/volumes/elasticsearch)
docker rm elasticsearch
# 彻底删除容器 + 数据(慎用)
docker rm -f elasticsearch && rm -rf /Users/xct/volumes/elasticsearch

参考

www.elastic.co/cn/download…

www.elastic.co/docs/deploy…

www.docker.elastic.co/r/elasticse…