我目前的项目需要我使用elasticsearch:2.4.6-alpine
docker映像。容器看起来运行正常,我可以使用CLI进入容器内部。但是当curl http://localhost:9200
执行时,它说:curl: (52) Empty reply from server
在容器中尝试了相同的curl命令,结果显示:curl: (7) Failed to connect to localhost port 9200: Connection refused
当我在容器中使用rc-status list
时,elasticsearch服务似乎不存在。有人知道吗?
1条答案
按热度按时间l0oc07j21#
看起来对M1的支持只在elasticsearch 7.12.0中添加了。请使用该版本或任何更新的版本。
有人说,当直接从弹性拉图像文件,而不是通过dockerhub时,效果更好。
更多讨论:https://discuss.elastic.co/t/arm-docker-image/268588
传统ElasticSearch(v2)
我仍然在寻找任何方法来运行Legacy ElasticSearch(版本2)通过Rosetta在M1 Mac上运行。到目前为止,没有运气。
更新:elasticsearch***V2***不工作,因为Docker的qemu从x64到arm的转换中有一个已知的bug。
嗯...... QEMU仿真坦率地说并不理想,也没有任何保证。如果你需要在Apple芯片上运行ES 6.x,最好的选择可能是使用适当的aarch64 JDK和使用tarball发行版。这里仍然没有任何保证,因为这不是一个受支持的配置。来源:https://github.com/elastic/elasticsearch/issues/69767