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

在Ubuntu Docker镜像中同时安装python-pip与python3-pip的问题

Ubuntu Docker镜像同时安装Python2、Python3及对应pip的问题解决

要不要同时装python-pip和python3-pip?

  • 如果你需要在镜像里同时用Python2和Python3开发/运行项目,得分别用pip(对应Python2)和pip3(对应Python3)安装不同版本的依赖包,那肯定得同时装两者。
  • 要是你只用到其中一个Python版本,留对应版本的pip就行,没必要装两个。

怎么避免安装python3-pip时删掉python-pip?

这是因为Ubuntu的apt包管理中,python-pip和python3-pip在部分版本里存在依赖冲突,分两次安装会触发apt自动移除冲突包。给你两个靠谱的解决办法:

办法1:一次性装完所有包

把所有需要安装的包放到同一个apt-get install命令里,让apt一次性处理依赖关系,就不会出现后装的包删除之前包的情况:

RUN apt-get update && apt-get install -y --no-install-recommends \
        python2 \
        python-pip \
        python3 \
        python3-pip && \
    rm -rf /var/lib/apt/lists/*

(补充:加apt-get update是因为镜像里的apt源可能不是最新的;安装完成后清理/var/lib/apt/lists/*能大幅减小镜像体积,这是Docker镜像构建的常规优化操作)

办法2:用官方脚本安装pip2(更稳妥)

如果apt的包冲突实在无法解决,放弃用apt安装python-pip,转而用Python官方的脚本安装pip2。这样安装的pip2独立于apt包管理,不会和python3-pip产生冲突,还能获取Python2可用的最新pip版本(apt中的python-pip版本通常比较老旧):

RUN apt-get update && apt-get install -y --no-install-recommends \
        python2 \
        python3 \
        python3-pip && \
    # 下载并安装pip2
    curl https://bootstrap.pypa.io/pip/2.7/get-pip.py | python2 && \
    rm -rf /var/lib/apt/lists/*

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.16 00:03:21