在Docker容器中安装Python 3.11的PyTorch

0 投票
1 回答
132 浏览
提问于 2025-04-14 16:28

我在PyTorch的官方网站上看到,PyTorch支持Python版本3.8到3.11。

但是,当我尝试在一个Python 3.11的Docker镜像中安装PyTorch和CUDA时,似乎找不到CUDA驱动,比如说:

FROM python:3.11.4
RUN --mount=type=cache,id=pip-build,target=/root/.cache/pip \
    pip install torch torchaudio
ENV PATH="/usr/local/nvidia/bin:${PATH}" \
    NVIDIA_VISIBLE_DEVICES=all \
    NVIDIA_DRIVER_CAPABILITIES=all

然后,在容器内部,我发现torch.version.cuda的值是None

对比一下:

FROM pytorch/pytorch
RUN --mount=type=cache,id=pip-build,target=/root/.cache/pip \
    pip install torchaudio
ENV PATH="/usr/local/nvidia/bin:${PATH}" \
    NVIDIA_VISIBLE_DEVICES=all \
    NVIDIA_DRIVER_CAPABILITIES=all

在容器内部,我看到torch.version.cuda的值是12.1

PyTorch声称它们与Python 3.11兼容,但有没有人真的能在Python 3.11中使用PyTorch和CUDA呢?

我尝试运行Python 3.11.4的Docker镜像。

我还尝试运行Conda的Docker镜像并安装PyTorch,但总是出现找不到镜像的错误。

1 个回答

0

更新 - 我想我自己解决了这个问题。虽然有点傻,但我只是把我的Dockerfile中的Python版本升级了一下。我知道这样可能会导致一些东西出问题,但我现在还没有遇到。

FROM pytorch/pytorch

RUN conda update -n base -c defaults conda && \
    conda install -y python=3.11 && \
    conda update --all --yes

CMD ["python", "--version"]

撰写回答