ElasticSearch Docker镜像使用心得

本文详细介绍了如何使用Docker搭建Elasticsearch环境,包括下载镜像、配置多节点集群、调整集群名称以及在Spring应用中连接Elasticsearch的注意事项。特别指出,Docker容器内的Elasticsearch集群默认名为'docker-cluster',需与应用中的cluster-name匹配,否则会导致Spring无法找到节点。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

为了保证环境的一致性,团队使用Dokcer镜像搭建开发环境。

本文展示搭建的全过程:

 

一,下载Docker镜像

docker pull elasticsearch:6.8.1

二,运行镜像

docker run -p 9200:9200 -p 9300:9300 -v C:/elasticsearch:/usr/share/elasticsearch/data  -v C:/elasticsearch/log:/var/log/elasticsearch -e "discovery.type=single-node" elasticsearch:6.8.1

tips:

1. 如果是刚安装的docker for windows,要先配置共享逻辑盘(Settings->Shared Driver->勾选逻辑盘)

2. 如果需要配置成多节点elasticsearch集群,可以修改环境变量 discovery.type

3. 注意与在物理机安装的不同之处:默认的集群名称是elasticsearch,而Docker镜像默认的集群名称是 docker-cluster, 这个可以通过交互模式进行修改 docker exec -it <container_id> bash

 

三,配置应用并指向Docker容器

本文中使用spring-data作为驱动,配置文件内容如下:

application.yml

spring:
  data:
    elasticsearch:
      repositories:
        enabled: true
      cluster-nodes: localhost:9300
      cluster-name: docker-cluster

tips: 如上所述,docker容器中elasticsearch集群的默认名称是 docker-cluster 因此 cluster-name 要对应起来,否则spring无法发现有效的节点,运行时抛出找不到节点的错误:

org.elasticsearch.client.transport.NoNodeAvailableException: None of the configured nodes are available

四,启动应用

如果console中没有输出报错信息,则表示已经配置成功:

(可以忽略MapperParsingException,因为本文中没有配置Mapper)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值