目录

问题描述

解决方法

wsl 模式、


问题描述

windows docker 运行elasticsearch 直接就停止了。

docker run --name es01 -p 9200:9200 -p 9300:9300 -it docker.elastic.co/elasticsearch/elasticsearch:8.1.1

 查看docker日志

docker logs es01

提示 max virtual memory areas vm.max_map_count [65530] is too low, increase to at least [262144]

ERROR: [1] bootstrap checks failed. You must address the points described in the following [1] lines before starting Elasticsearch.
bootstrap check failure [1] of [1]: max virtual memory areas vm.max_map_count [65530] is too low, increase to at least [262144]
ERROR: Elasticsearch did not exit normally - check the logs at /usr/share/elasticsearch/logs/docker-cluster.log

解决方法

网络上找到的基本都是说sysctl -w vm.max_map_count=262144货者是/etc/sysctl.conf里添加vm.max_map_count = 262144 。但是在容器里操作后问题依旧,后发现需要操作的是宿主机。然而windows的宿主机是用docker-desktop容器来提供服务的,操作方法如下。

wsl 模式、

注意:这个方法重启电脑或wsl --shutdown停止服务后重启就无效了。

进入宿主机:

wsl -d docker-desktop

输入 

sysctl -w vm.max_map_count=262144

Logo

权威|前沿|技术|干货|国内首个API全生命周期开发者社区

更多推荐