【问题标题】:/lib64/ld-linux-x86-64.so.2: No such file or directory error/lib64/ld-linux-x86-64.so.2:没有这样的文件或目录错误
【发布时间】:2021-08-03 04:53:01
【问题描述】:

背景

我正在使用 docker 做一个学校项目。具体来说,我提取了一个 ubuntu 映像,这是系统配置:

然后我登录到 docker 容器 (ubuntu) 并设置了 elasticsearch。当我尝试运行时

./bin/elasticsearch

我在 docker 容器的终端内收到以下错误

/lib64/ld-linux-x86-64.so.2: No such file or directory

我有两个主要困惑:

  1. 这是什么意思?
  2. 如何解决?

【问题讨论】:

  • 请通过命令行复制和粘贴显示您正在运行的确切步骤。包括命令运行,它的输出,并将其作为格式化文本而不是屏幕截图发布。这应该包括启动 ubuntu 和安装/设置 elasticsearch 所采取的步骤。

标签: linux docker ubuntu linux-kernel docker-machine


【解决方案1】:

如果您在 M1 macbook 上运行此程序,则可能运行的是 ubuntu 的本机 Arm 映像,而不是模拟的 x86 映像。如果您尝试安装的 elasticsearch 发行版适用于 x86_64,那么它会尝试链接到 x86-64-native ld.so,这当然不会出现在不同的平台上。

如果他们提供了一个包,则专门为 arm 平台安装包,或者 - 更有可能 - 将 docker 明确地作为模拟的 x86_64 平台运行:

docker run --platform linux/x86_64 <image>

【讨论】:

  • 很多小时的搜索,终于找到了这个,这是拼图中缺失的一块。我的用例有点不同,但最终的根本原因是一样的。
  • 非常感谢,我在 M1 上使用 docker build 命令遇到了同样的问题。 docker build --platform linux/x86_64 帮忙!
【解决方案2】:

对于docker-compose,根据the docs添加platform: linux/x86_64

services:
  my-app:
    platform: linux/x86_64

【讨论】:

    猜你喜欢
    • 2022-10-07
    • 2021-10-09
    • 2018-10-21
    • 1970-01-01
    • 2023-02-20
    • 1970-01-01
    • 2010-12-18
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多