如果您正在M1 Macbook上运行此程序,则可能是在本地Arm图像的Ubuntu上运行,而不是模拟的x86图像。如果您要安装的Elasticsearch发行版是针对x86_64的,则尝试链接到x86-64本机ld.so,当然不会存在于不同平台上。
如果提供了arm平台的包,请专门安装该包,否则更可能的是明确将docker作为模拟的x86_64平台运行:
docker run --platform linux/x86_64 <image>
docker build
命令遇到了相同的问题。使用 docker build --platform linux/x86_64
命令解决了问题! - jzavisek不清楚你在容器中运行的是什么,但对于我来说,原因很简单,因为一个软件包(Prisma https://github.com/prisma/prisma/issues/8478#)找不到openssl包,在alpine
镜像上安装它们失败,即使手动安装openssl
也不行。
通过切换到slim
镜像并使用apt-get update && apt-get -y install openssl
命令安装openssl来解决问题。我强烈建议不要更改平台,因为在我的M1上,使用linux/x86_64
构建时间增加了200秒。
补充@misnomer的答案,我甚至不能构建镜像。
如果是这种情况,请添加FROM --platform=linux/x86_64 ...
,来自此来源。例如:FROM --platform=linux/x86_64 python:slim ...