使用环境变量限制Elasticsearch堆内存大小



我正在尝试限制Elasticsearch JVM堆大小。

我有一个自定义的docker镜像(刚刚添加了一些插件(,为了启动它,我使用了以下行:

docker run --name elastic-search -d -p 9200:9200 -p 9300:9300 --env-file=elastic-docker.properties build-server/my-elastic:latest

docker.properties文件如下所示:

discovery.type=single-node
bootstrap.memory_lock=true
xpack.security.enabled=true
ELASTIC_USERNAME=elastic
ELASTIC_PASSWORD=changeme
ES_JAVA_OPTS="-Xms2g -Xmx2g"

但是这样设置ES_JAVA_OPTS会得到Error: Could not find or load main class "-Xms2g。我尝试了ES_JAVA_OPTS=".bin/my-elastic -Xms2g -Xmx2g"的组合,但没有成功。

感谢您的帮助,我真的更愿意通过环境选项来做到这一点。

这里似乎有引号的错误。它实际上应该在环境文件中列为ES_JAVA_OPTS=-Xms2g -Xmx2g

最新更新