Ana*_*nan 18 windows elasticsearch docker docker-compose
我是 Docker 和 Elasticsearch 的新手。我正在使用 Windows 7 机器。我正在使用docker-compose updocker 容器。我的 yml 文件有
elasticsearch:
image: elasticsearch:5.1.1
environment:
ES_JAVA_OPTS: "-Xms1g -Xmx1g"
Run Code Online (Sandbox Code Playgroud)
以及其他链接的图像。
我正在使用 docker 来调出 elasticsearch 图像,当我这样做时,我收到以下错误
[36melasticsearch_1 |?[0m ERROR: bootstrap checks failed
[36melasticsearch_1 |?[0m max virtual memory areas vm.max_map_count [65530] is too low, increase to at least [262144]
[36melasticsearch_1 |?[0m [2017-02-08T11:06:51,752][INFO ][o.e.n.Node
Run Code Online (Sandbox Code Playgroud)
我在 google 上搜索了一个解决方案,并在他们建议使用的任何地方搜索
sudo sysctl vm.max_map_count=262144,但在 Windowssysctl中不可用。没有为 Windows 提供明确的步骤。
其他一些 Docker 映像已在我的机器上启动并运行,因此 Docker 正在运行。
有人可以提供任何线索来解决这个问题吗?
小智 52
我在这个问题上被困了几个月,解决方案是在 cmd.exe 上启动以下命令,如官方 Elasticsearch 文档中所述:
1) wsl -d docker-desktop
2) sysctl -w vm.max_map_count=262144
Run Code Online (Sandbox Code Playgroud)
您已准备好启动 Elasticsearch!
Joã*_*cca 15
目前,下面这个问题的方法,使其工作是wsl -d docker-desktop和sysctl -w vm.max_map_count=262144那里。
有些人通过echo "vm.max_map_count = 262144" > /etc/sysctl.d/99-docker-desktop.conf或让它持续工作echo -e "\nvm.max_map_count = 262144\n" >> /etc/sysctl.d/00-alpine.conf,但这些都不适合我。
小智 10
唯一对我有用的永久解决方案是将这一行添加到.wslconfig(应该在您的Windows用户目录%userprofile%中)
[wsl2]
kernelCommandLine="sysctl.vm.max_map_count=262144"
Run Code Online (Sandbox Code Playgroud)
感谢@NotTheDr01ds 找到解决方案
https://learn.microsoft.com/en-us/windows/wsl/wsl-config#wslconfig
Elasticsearch 对此有一个修复。
这对我来说适用于 Win 10 Pro 版本 10.0.19042.685,使用 ES 7.10 的 Docker Engine v20.10.0
问题出在 Linux 主机 (WSL2) 上,而不是容器上。
请参阅带有 Docker Desktop WSL 2 后端的 Windows 部分 https://www.elastic.co/guide/en/elasticsearch/reference/current/docker.html#_set_vm_max_map_count_to_at_least_262144
-d 发行版(例如不是 ubuntu)
wsl -d docker-desktop
sysctl -w vm.max_map_count=262144
Run Code Online (Sandbox Code Playgroud)
之后我的 3 节点集群 docker-compose 成功启动。
小智 2
您在正常或生产模式下启动了 Elasticsearch,从版本 5 开始,该模式包含引导程序检查,如果失败,Elasticsearch 将不会启动。
https://www.elastic.co/guide/en/elasticsearch/reference/current/bootstrap-checks.html
但是,您可以在 Windows 上运行开发模式,这只会产生警告。只需尝试运行弹性本身的图像即可。
docker run -p 9200:9200 -e "http.host=0.0.0.0" \
-e "transport.host=127.0.0.1" \
docker.elastic.co/elasticsearch/elasticsearch:5.2.0
Run Code Online (Sandbox Code Playgroud)
https://www.elastic.co/guide/en/elasticsearch/reference/current/docker.html
| 归档时间: |
|
| 查看次数: |
16644 次 |
| 最近记录: |