You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Docker编译时无法找到匹配的torch==2.0.0版本问题求助

问题解决方法

核心原因

Alpine Linux 使用 musl 库,而 PyPI 上官方提供的 PyTorch 预编译包大多只支持 glibc 环境(如 Debian/Ubuntu),arm64 架构下更是缺少对应 musl 版本的预编译包,导致 pip 无法找到匹配的 torch==2.0.0 版本。

解决方案:更换基础镜像为 glibc 环境

将 Dockerfile 中的 Alpine 镜像替换为基于 Debian/Ubuntu 的 Python 镜像,这类镜像支持官方预编译的 PyTorch 包。以下是修改后的 Dockerfile:

FROM --platform=linux/arm64 python:3.9-slim-bookworm

# 升级 pip
RUN python -m pip install --upgrade pip

# 安装系统依赖(ffmpeg 等)
RUN apt-get update && apt-get install -y --no-install-recommends \
    build-essential \
    ffmpeg \
    pkg-config \
    && rm -rf /var/lib/apt/lists/*

# 复制项目代码
ADD . /code
WORKDIR /code

# 安装依赖,指定 PyTorch 官方源确保 arm64 包可获取
RUN pip install -r requirements.txt \
    --index-url https://download.pytorch.org/whl/cpu

# 暴露端口
EXPOSE 80

# 启动应用
CMD python app.py

额外说明

  • requirements.txt 无需修改:保持原内容即可,官方源会自动匹配 arm64 架构的 torch/torchaudio 包。
  • GPU 支持注意:若需要 GPU 加速,需更换为带 CUDA 的 PyTorch 镜像或调整 --index-url 为对应 CUDA 版本的源,但 M2 属于 Apple Silicon,Docker 中 GPU 支持需额外配置。
  • 不推荐 Alpine 源码编译:如果坚持使用 Alpine,需从源码编译 PyTorch,过程耗时极长且容易出现依赖兼容问题。

内容的提问来源于stack exchange,提问作者AJ152

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.27 10:46:17