gpt4 book ai didi

python - 我可以在可用于 ubuntu docker 镜像的 macOS 上为 python 包创建轮子吗?

转载 作者:太空宇宙 更新时间:2023-11-03 17:10:02 30 4
gpt4 key购买 nike

我正在做一个 python/django 项目。对于部署,我想创建一个 ubuntu 16.04 docker 镜像。当我在 ubuntu 本地主机上工作时,我会生成所有 wheel 文件,它们可用于创建图像。 (我将所有这些轮子复制到 docker,所以我在 Dockerfile 中运行 RUN pip3 install --no-cache-dir --no-index -f wheelhouse -r requirements.txt 以使用本地安装需求wheels。其中 wheelehouse 是一个文件夹,我已将我所有的本地 wheels 复制到其中。)

但是当我在 macOS 主机上创建轮子时,一些生成的轮子类似于 some_packagename-**macosx_10_6_intel**.whl 。所以它们不能用于创建 ubuntu docker 镜像。

有没有一种方法可以强制 pip wheel 为 linux 而不是从 macOS 上的源文件生成轮子?

最佳答案

如果您没有 C 扩展,那么您应该能够:

python setup.py bdist_wheel --universal 

获取非平台特定的 some_packagename-X.Y.Z-py2.py3-none-any.whl

如果您有 C 扩展,则需要生成平台特定的 wheel。

最好的方法是使用 Docker(在 MacOS 上运行在虚拟机中)和 manylinux Docker 容器为 Python 2.7 和 3.4-3.7 生成轮子。

生成的轮子将安装在许多旧版本的 Linux 上,因为 manylinux 容器的创建方式。这比启动您自己的 Ubuntu XX.04 版本(可能在虚拟机中)并且无法将其安装在使用比您的 Ubuntu 版本更旧的编译器等的任何东西上要好得多。

关于python - 我可以在可用于 ubuntu docker 镜像的 macOS 上为 python 包创建轮子吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40790301/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com