目录
1 使用 Alpine 可能会使 Python Docker 构建速度减慢 50 倍
当你为 Docker 镜像选择基础镜像时,Alpine Linux 经常被推荐。使用 Alpine,你会被告知,它会使你的镜像更小,并加快构建速度。如果你使用的是 Go,这是一个合理的建议。
但如果你使用的是 Python,Alpine Linux 有时会:
- 使你的构建速度大大减慢。
- 使你的镜像更大。
- 浪费你的时间。
- 偶尔引入难以察觉的运行时错误。
看看为什么 Alpine 被推荐,以及为什么你可能不想为你的 Python 应用程序使用它。
更新:PEP 656 和相关基础设施意味着
pip
和 PyPI 现在支持musl
C 库的 wheel,因此也支持 Alpine。像 cibuildwheel 这样的构建工具已经添加了对这些的支持,Alpine 兼容的 wheel 已经变得更加广泛可用,包括许多科学 Python 库,如 matplotlib、Pandas 和 NumPy。然而,并非所有包都构建它们。尽管如此,使用 Alpine 的问题