elasticsearch 在 docker 环境下部署可能会发生的问题

前言

注意,本文仅仅只是一个便利贴文章。主要讲述的便是elasticsearch 在 docker 之下部署 , 那么可能会发生的一些问题。

部署命令

sudo docker run --name es -p 9200:9200 -p 9300:9300 -e “discovery.type=single-node” -e “ES_JAVA_OPTS=-Xms512m -Xmx512m” -d elasticsearch

sudo :这句为可加可不加,但是要注意的是,在部分安装情况下,必须加上这句才能调用docker的命令,因此我决定方正加不加不会出现太大的问题,何乐而不为呢?
name:容器的名字,如果在测试环境之中,也就是说,你都不知道这个容器是否能正常的部署,那么我建议你取个短一点的名字,因为,你也不想没事写一堆的名称
p:端口号
e:参数
d:这个一定要加,这个等同于允许异步操作.
discovery.type=single-node:elasticsearch 单机节点,如果你是学习环境或者说测试环境则可以用这个,倘若你是要部署到实际环境,那么可就要去百度一下集群了
ES_JAVA_OPTS=-Xms512m -Xmx512m:使用内存为 512 mb ,主要也是为了在学习与测试环境之下,你的云服务器内存可能不太够的问题。如果要知道详细情况请看下文

下面,主要解释出现问题

第一种问题,没有加上 -d 情况。

其实-d 就好像 一种异步调用的问题。而且也说不太清除,总之你不加-d 很有可能会失败。
因为有可能你选择程序退出的时候,es 也会自动退出这么一个情况。
因此,你应该去使用-d 。
但是,如果你不知道部署的问题出现在那里的时候,你有一个小技巧,就是去掉 -d 。
这样你就可以看得到错误代码。然后,你就可以用这个错误代码去找到对应的解决方案

内存不足

错误代码部分:

VM warning: INFO: os::commit_memory(0x0000000085330000, 2060255232, 0) failed; error='Cannot allocat

因为,docker 默认最小内存为2G,当你没有分配这么多的时候,那么你就必须使用命令行,也是我么上文所说的

ES_JAVA_OPTS=-Xms512m -Xmx512m

它会对减小内存,这样就可以达到你想要的标准

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值