gpt4 book ai didi

Docker 容器 : pip is not found even though I have set the PATH during building

转载 作者:行者123 更新时间:2023-12-02 19:23:31 24 4
gpt4 key购买 nike

我是 docker 容器的新手,我想用基本环境构建一个图像。这是我的 Dockerfile 的一部分:

FROM nvidia/cuda:10.0-cudnn7-devel-ubuntu18.04

ARG CTAGS_DIR=~/tools/ctags
ARG RIPGREP_DIR=~/tools/ripgrep
ARG ANACONDA_DIR=~/tools/anaconda
ARG NVIM_DIR=~/tools/nvim
ARG NVIM_CONFIG_DIR=~/.config/nvim

# Install common dev tools
RUN apt-get update --allow-unauthenticated \
&& apt-get install --allow-unauthenticated -y git curl autoconf pkg-config zsh

# Install anaconda
COPY ./packages/Anaconda3-2019.07-Linux-x86_64.sh /tmp/anaconda.sh
RUN chmod u+x /tmp/anaconda.sh \
&& bash /tmp/anaconda.sh -b -p ${ANACONDA_DIR} \
&& rm /tmp/anaconda.sh
ENV PATH=${ANACONDA_DIR}/bin:$PATH
# RUN echo $PATH && ls -l /root/tools/anaconda/bin|grep pip
RUN echo $PATH && ls -l ~/tools/anaconda/bin|grep pip

# Python packages
RUN pip install pynvim jedi pylint

构建过程在 pip install 步骤失败,提示

/bin/sh: 1: pip: not found
The command '/bin/sh -c pip install pynvim jedi pylint' returned a non-zero code: 127



但是命令的输出
RUN echo $PATH && ls -l ~/tools/anaconda/bin|grep pip

以下是
~/tools/anaconda/bin:/usr/local/nvidia/bin:/usr/local/cuda/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
-rwxrwxr-x 1 root root 231 Sep 28 08:19 pip

这表明 PATH 已设置并且 pip 是可找到的。我不确定这里有什么问题。
唯一的解释是 PATH 已设置但未正确设置。我不知道为什么。

有人可以解释发生了什么吗?我的 Dockerfile 有什么问题?

最佳答案

我在 Dockerfile 中使用的基础镜像中没有看到 pip,您可以查看官方 Dockerfile ,在nvidia/cuda的基础镜像中,也可以查看基础镜像10.0-cudnn7-devel-ubuntu18.04

安装pip然后试试

FROM nvidia/cuda:10.0-cudnn7-devel-ubuntu18.04
RUN apt update && apt install python3-pip -y
RUN pip3 --version

关于Docker 容器 : pip is not found even though I have set the PATH during building,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58144852/

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