docker启动elasticsearch时内存不足怎么解决
发表于:2026-10-31 作者:千家信息网编辑
千家信息网最后更新 2026年10月31日,本文小编为大家详细介绍"docker启动elasticsearch时内存不足怎么解决",内容详细,步骤清晰,细节处理妥当,希望这篇"docker启动elasticsearch时内存不足怎么解决"文章能
千家信息网最后更新 2026年10月31日docker启动elasticsearch时内存不足怎么解决
本文小编为大家详细介绍"docker启动elasticsearch时内存不足怎么解决",内容详细,步骤清晰,细节处理妥当,希望这篇"docker启动elasticsearch时内存不足怎么解决"文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。
问题
docker安装并启动elasticsearch时内存不足
系统centos8(阿里云ecs服务器)
[root@iz2zeczvvb79boy368xppwz ~]# cat /etc/redhat-releasecentos linux release 8.1.1911 (core)
安装过程
docker pull elasticsearch:6.4.0
修改虚拟机内存(貌似没有效果)
sysctl -w vm.max_map_count=262144
使用docker run命令跑容器
docker run -p 9200:9200 -p 9300:9300 --name elasticsearch \-e "discovery.type=single-node" \-e "cluster.name=elasticsearch" \-v /mydata/elasticsearch/plugins:/usr/share/elasticsearch/plugins \-v /mydata/elasticsearch/data:/usr/share/elasticsearch/data \-d elasticsearch:6.4.0
docker ps查看容器并没有启动
[root@iz2zeczvvb79boy368xppwz ~]# docker pscontainer id image command created status ports namesedfc400862eb rabbitmq:3.7.15 "docker-entrypoint.s…" 14 hours ago up 14 hours 0.0.0.0:4369->4369/tcp, 0.0.0.0:5671-5672->5671-5672/tcp, 0.0.0.0:15671-15672->15671-15672/tcp, 0.0.0.0:25672->25672/tcp rabbitmq2ae2f3f8dc1f nginx:1.10 "nginx -g 'daemon of…" 2 weeks ago up 2 weeks 0.0.0.0:80->80/tcp, 443/tcp nginx164e4e7561df redis:3.2 "docker-entrypoint.s…" 2 weeks ago up 2 weeks 0.0.0.0:6379->6379/tcp rediseeabe57f1f21 mysql:5.7 "docker-entrypoint.s…" 2 weeks ago up 2 weeks 0.0.0.0:3306->3306/tcp, 33060/tcp mysql
docker ps -a 查看容器确实创建了
[root@iz2zeczvvb79boy368xppwz ~]# docker ps -acontainer id image command created status ports names767829ae1d7c elasticsearch:6.4.0 "/usr/local/bin/dock…" about a minute ago exited (1) about a minute ago elasticsearchedfc400862eb rabbitmq:3.7.15 "docker-entrypoint.s…" 14 hours ago up 14 hours 0.0.0.0:4369->4369/tcp, 0.0.0.0:5671-5672->5671-5672/tcp, 0.0.0.0:15671-15672->15671-15672/tcp, 0.0.0.0:25672->25672/tcp rabbitmq2ae2f3f8dc1f nginx:1.10 "nginx -g 'daemon of…" 2 weeks ago up 2 weeks 0.0.0.0:80->80/tcp, 443/tcp nginx164e4e7561df redis:3.2 "docker-entrypoint.s…" 2 weeks ago up 2 weeks 0.0.0.0:6379->6379/tcp rediseeabe57f1f21 mysql:5.7 "docker-entrypoint.s…" 2 weeks ago up 2 weeks 0.0.0.0:3306->3306/tcp, 33060/tcp mysql
查看日志docker logs -f elasticsearch命令查看日志发现jvm内存不足
[root@iz2zeczvvb79boy368xppwz ~]# docker logs -f elasticsearchopenjdk 64-bit server vm warning: option useconcmarksweepgc was deprecated in version 9.0 and will likely be removed in a future release.openjdk 64-bit server vm warning: info: os::commit_memory(0x00007ebf15330000, 549668585472, 0) failed; error='not enough space' (errno=12)## there is insufficient memory for the java runtime environment to continue.# native memory allocation (mmap) failed to map 549668585472 bytes for committing reserved memory.# an error report file with more information is saved as:# logs/hs_err_pid1.log
解决方法
修改jvm.options文件配置
首先查找jvm.options文件位置(每个服务器的位置可能不同)
[root@iz2zeczvvb79boy368xppwz ~]# find / -name jvm.options/var/lib/docker/overlay2/d399872a3517b4d4acb0d2f70d0625c0f38251ffe5819a1cea00f8213de3e7f5/diff/usr/share/elasticsearch/config/jvm.options
vim进入文件修改虚拟机最小内存
[root@iz2zeczvvb79boy368xppwz ~]# vim /var/lib/docker/overlay2/d399872a3517b4d4acb0d2f70d0625c0f38251ffe5819a1cea00f8213de3e7f5/diff/usr/share/elasticsearch/config/jvm.options
找到-xms属性,修改成512m(我的elasticsearch:6.4.0默认为1g)
## jvm configuration################################################################## important: jvm heap size#################################################################### you should always set the min and max jvm heap## size to the same value. for example, to set## the heap to 4 gb, set:#### -xms4g## -xmx4g#### see https://www.elastic.co/guide/en/elasticsearch/reference/current/heap-size.html## for more information################################################################### xms represents the initial size of total heap space# xmx represents the maximum size of total heap space-xms512m-xmx512m
保存并退出
vim中按i进入编辑模式,按esc退出编辑模式,按:进入命令模式,然后在底部命令行输入w为保存,q为退出,q!为强制退出。
再次启动容器,docker ps查看容器启动成功
[root@iz2zeczvvb79boy368xppwz ~]# docker pscontainer id image command created status ports namesf5c4ed61196b elasticsearch:6.4.0 "/usr/local/bin/dock…" 15 minutes ago up 15 minutes 0.0.0.0:9200->9200/tcp, 0.0.0.0:9300->9300/tcp elasticsearchedfc400862eb rabbitmq:3.7.15 "docker-entrypoint.s…" 15 hours ago up 15 hours 0.0.0.0:4369->4369/tcp, 0.0.0.0:5671-5672->5671-5672/tcp, 0.0.0.0:15671-15672->15671-15672/tcp, 0.0.0.0:25672->25672/tcp rabbitmq2ae2f3f8dc1f nginx:1.10 "nginx -g 'daemon of…" 2 weeks ago up 2 weeks 0.0.0.0:80->80/tcp, 443/tcp nginx164e4e7561df redis:3.2 "docker-entrypoint.s…" 2 weeks ago up 2 weeks 0.0.0.0:6379->6379/tcp rediseeabe57f1f21 mysql:5.7 "docker-entrypoint.s…" 2 weeks ago up 2 weeks 0.0.0.0:3306->3306/tcp, 33060/tcp mysql
读到这里,这篇"docker启动elasticsearch时内存不足怎么解决"文章已经介绍完毕,想要掌握这篇文章的知识点还需要大家自己动手实践使用过才能领会,如果想了解更多相关内容的文章,欢迎关注行业资讯频道。
内存
容器
命令
文件
文章
模式
位置
内容
日志
服务器
服务
不同
妥当
最小
成功
再次
属性
底部
思路
效果
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
科技互联网龙头
互联网科技金融公司
碳银互联网科技
互联网科技ppt模板
上游互联网科技
长亮科技互联网金融
互联网科技公司有哪些
人人互联网科技是培训
互联网科技公司需要的职位
互联网软件和科技
长沙互联网科技
科技互联网海报
互联网科技圈年度人物
每天都有哪些好的互联网科技
互联网企业科技类企业如何做账
萌小萌互联网科技河南有限公司
吉林省码上互联网科技电话
互联网科技机房
互联网公司属于科技吗
互联网金融金融科技
互联网科技官网
金融科技与互联网金融
杭州互联网科技公司
互联网与未来科技
兼蜜互联网科技
阿里互联网科技公司
华服互联网科技官网
阿大互联网科技有限公司
工业互联网展湾科技股份有限公司
科技互联网专业务虚会材料