【问题标题】:M1 Mac - Issue bringing up ElasticSearch. Cannot run jdk/bin/javaM1 Mac - 启动 ElasticSearch 的问题。无法运行 jdk/bin/java
【发布时间】:2021-05-03 20:45:39
【问题描述】:

做了一些搜索无济于事。尝试使用 Elasticsearch docker 容器设置项目。可以在我的旧英特尔 MacBook 上使用,但新系统到目前为止还没有运气。

elasticsearch    | Exception in thread "main" java.io.IOException: Cannot run program "/usr/share/elasticsearch/jdk/bin/java": error=0, Failed to exec spawn helper.
elasticsearch    |  at java.base/java.lang.ProcessBuilder.start(ProcessBuilder.java:1128)
elasticsearch    |  at java.base/java.lang.ProcessBuilder.start(ProcessBuilder.java:1071)
elasticsearch    |  at org.elasticsearch.tools.launchers.JvmErgonomics.flagsFinal(JvmErgonomics.java:111)
elasticsearch    |  at org.elasticsearch.tools.launchers.JvmErgonomics.finalJvmOptions(JvmErgonomics.java:88)
elasticsearch    |  at org.elasticsearch.tools.launchers.JvmErgonomics.choose(JvmErgonomics.java:59)
elasticsearch    |  at org.elasticsearch.tools.launchers.JvmOptionsParser.main(JvmOptionsParser.java:95)
elasticsearch    | Caused by: java.io.IOException: error=0, Failed to exec spawn helper.
elasticsearch    |  at java.base/java.lang.ProcessImpl.forkAndExec(Native Method)
elasticsearch    |  at java.base/java.lang.ProcessImpl.<init>(ProcessImpl.java:319)
elasticsearch    |  at java.base/java.lang.ProcessImpl.start(ProcessImpl.java:250)
elasticsearch    |  at java.base/java.lang.ProcessBuilder.start(ProcessBuilder.java:1107)
elasticsearch    |  ... 5 more
elasticsearch exited with code 1

非常感谢任何帮助或指出正确的方向!

【问题讨论】:

    标签: java macos docker apple-m1


    【解决方案1】:

    使用来自 dockerhub 的图像也遇到了这个问题,但现在使用 official docker build from Elastic 似乎可以在我的 M1 Mac 上正常工作。

    docker run -p 9200:9200 -p 9300:9300 -e "discovery.type=single-node" docker.elastic.co/elasticsearch/elasticsearch:7.10.2
    

    【讨论】:

    • 这个解决方案解决了这个问题!感谢您的帮助!
    • 在 M1 上也为我修复了它:-)
    • 版本 7.10.2 :)
    • 有趣,非常感谢,它有效
    • ``` $ docker --version Docker 版本 20.10.8,构建 3967b7d ``` ``` $ docker run -p 9200:9200 -p 9300:9300 -e "discovery.type=单节点”docker.elastic.co/elasticsearch/elasticsearch:7.10.2 警告:请求的图像平台(linux/amd64)与检测到的主机平台(linux/arm64/v8)不匹配,并且没有请求特定平台异常线程“main”java.io.IOException:无法运行程序“/usr/share/elasticsearch/jdk/bin/java”:错误=0,无法执行生成助手:pid:233,退出值:1```指定docker run --platform=linux/amd64 失败,有什么想法吗?
    【解决方案2】:

    将 elasticsearch 版本从 7.5.1 更改为 7.10.2。 (ELK_VERSION=7.10.2)

    【讨论】:

      【解决方案3】:

      根据这条评论:https://github.com/opendistro/for-elasticsearch-docs/issues/385#issuecomment-867198711 有针对 Apple M1 的特定版本,后缀为 -arm64,例如:

      docker.elastic.co/elasticsearch/elasticsearch:7.10.2-arm64
      

      【讨论】:

        猜你喜欢
        • 2022-12-30
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2022-10-12
        • 2022-01-06
        • 1970-01-01
        • 2022-08-18
        • 2021-10-31
        相关资源
        最近更新 更多