使用Docker安装ElasticSearch 以及我遇到的问题

本文详细介绍了如何使用Docker安装Elasticsearch,包括创建挂载目录、配置`elasticsearch.yml`文件及启动容器的步骤。在安装过程中遇到了一个问题,即尝试将一个目录挂载为文件,导致启动失败。通过检查和修正挂载路径,成功解决了这个问题,使得Elasticsearch容器能够正常启动。
摘要由CSDN通过智能技术生成

使用Docker安装ElasticSearch 以及我遇到的问题

  1. 第一步先准备好需要挂载到docker里面的目录和文件
    例如:

    mkdir -p /usr/local/esdata/config
    mkdir -p /usr/local/esdata/data
    mkdir -p /usr/local/esdata/plugins
    
    vi /usr/local/esdata/config/elasticsearch.yml
    
    #文本输入如下
    http.host: 0.0.0.0
    

2.第二步下载并启动es容器

docker run 
--name elasticsearch 
-p 9200:9200 
-p 9300:9300 -e "discovery.type=single-node" 
-e ES_JAVA_OPTS="-Xms64m -Xmx128m" 
-v /usr/local/esdata/config/elasticsearch.yml:/usr/share/elasticsearch/config/elasticsearch.yml 
-v /usr/local/esdata/data:/usr/share/es/data 
-v /usr/local/esdata/plugins:/usr/share/elasticsearch/plugins 
-d elasticsearch:7.7.0

直接docker run Docker会自动pull

记录一下我安装时遇到的问题:

Error response from daemon: OCI runtime create failed: container_linux.go:349: starting container process caused "process_linux.go:449: container init caused \"rootfs_linux.go:58: mounting \\\"/usr/local/mydata/config/elasticsearch.yml\\\" to rootfs \\\"/var/lib/docker/overlay2/c4fc8e876eb44269911cd4ddb18c9039df0bd26c93a6d26642a8a6c2b17510c5/merged\\\" at \\\"/var/lib/docker/overlay2/c4fc8e876eb44269911cd4ddb18c9039df0bd26c93a6d26642a8a6c2b17510c5/merged/usr/share/elasticsearch/config/elasticsearch.yml\\\" caused \\\"not a directory\\\"\"": unknown: Are you trying to mount a directory onto a file (or vice-versa)? Check if the specified host path exists and is the expected type
Error: failed to start containers: elasticsearch

这句报错的重点是这一句:
mount a directory onto a file (or vice-versa)? Check if the specified host path exists and is the expected type
意思是说挂载的 elasticsearch.yml 是一个目录而不是文件,粗心将路径写错了,修改了之后成功启动es容器

BlackJoyful

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值