使用 Python 的 Slim 发行版时,Mac M1 上的 Docker 中的 pip 安装出现错误

NK1*_*NK1 4 python pip docker apple-m1

我有一个在 Docker 上运行的应用程序,它在我的旧的基于英特尔的 Mac 上运行良好。但是,在 M1 Mac 上,运行 docker-compose up 时出现 pip install 错误。例如

 asyncpg==0.24.0
 error: command 'gcc' failed: No such file or directory
Run Code Online (Sandbox Code Playgroud)

我的 Dockerfile 使用 python-slim ,它没有编译器,所以我明白为什么:

FROM python:3.10-slim

WORKDIR /src
COPY . ./
RUN pip install --upgrade pip
RUN pip install -r requirements.txt
Run Code Online (Sandbox Code Playgroud)

我想坚持使用 -slim 包。在 Mac M1 上实现此功能的最佳方法是什么?

谢谢!

Sel*_*cuk 7

我遇到了类似的问题并强制平台linux/amd64修复它:

FROM --platform=linux/amd64 python:3.10-slim
Run Code Online (Sandbox Code Playgroud)

查看已知问题

并非所有映像都适用于 ARM64 架构。您可以添加--platform linux/amd64以在模拟下运行 Intel 映像。