在 mac m1 上的容器中安装旧的 pyarrow 版本

stu*_*sam 5 python docker

我正在尝试在 mac m1 上安装pyarrow==0.16.0python:3.8 图像作为工作中内部包的依赖项。我无法使用 docker build 来构建它。我还发现其他软件包(例如 numpy)很难或不可能安装在较旧的 python 版本(3.7 和 3.8)上。当人们无法自行升级版本时,如何在 mac m1 上为本地开发环境使用较旧的软件包版本(没有 ARM 轮子)(例如 numpy 和 pyarrow)构建 python 容器?

简单的例子是
dockerfile

FROM python:3.8

RUN apt update && apt install -y cmake
RUN pip install pyarrow==0.16.0
Run Code Online (Sandbox Code Playgroud)

终端

> docker build -t pyarrow .
Run Code Online (Sandbox Code Playgroud)

为什么它们的行为不同以及如何让旧的 pyarrows 和 numpys 在 python 3.7 和 3.8 容器上工作。

结果

错误输出


其他方式(有效)

终端

> docker run --rm -it python:3.8 bash
> pip install pyarrow==0.16.0
.
.
.

Run Code Online (Sandbox Code Playgroud)