Elasticsearch Docker容器崩溃,错误为:本机控制器进程已停止-无法启动新的本机进程



我有一个简单的docker设置,在该设置中,我使用以下命令从docker Hub提取Elastic搜索:

docker pull elasticsearch:7.6.2

提到版本代码是因为它不适用于最新的标记。

然后我使用以下命令创建了一个ElasticSearch容器:

docker container run -d -p 9200:9200 --name elasticsearch elasticsearch:7.6.2

输入上述命令后,容器被创建并运行,但它运行了几秒钟,然后崩溃,并显示错误消息:本机控制器进程已停止-无法启动新的本机进程。

以下是完整的错误JSON

{"type": "server", "timestamp": "2020-04-07T19:28:05,721Z", "level": "INFO", "component": "o.e.x.m.p.NativeController", "cluster.name": "docker-cluster", "node.name": "c62b88f8807c", "message": "Native controller process has stopped - no new native processes can be started" }

我在谷歌上搜索并尝试了许多链接,我尝试重新创建容器,重新下载较低版本的图像,我甚至尝试在Docker>Settings>Resources>Advanced中增加内存,但仍然不适用。

我已经在以下链接上尝试了所有选项:https://github.com/elastic/elasticsearch/issues/25067

请帮忙,提前谢谢!!!

在开发模式下运行elasticsearch docker时,需要使用discovery.type=single-node来避免生产引导检查,这会导致docker退出。

如注释中所述,添加discovery.type=single-node解决了问题,下面是完整的命令。

docker run -p 9200:9200 -p 9300:9300 -e "discovery.type=single-node" --name elasticsearch elasticsearch:7.6.2

相关内容

最新更新