pip版本低引发的python离线包安装失败

在两台Ubuntu服务器中,通过在能联网的服务器上下载所需Python包(包括docker-compose和pip),然后拷贝到无法联网的服务器上进行离线安装。由于pip版本差异导致安装失败,通过升级pip并使用`--no-index --find-links`参数解决依赖问题,最终成功安装docker-compose。
摘要由CSDN通过智能技术生成

目的

项目需要离线安装python包(本项目特指的docker-compose包,这里指的是python的包)。

环境

两台ubuntu18.04.5服务器,其中一台(192.168.230.134)可以联网,另一台无法联网(192.168.230.135)

python版本:python3.6

问题

在134上下载所有关联的离线包,使用如下命令:

mkdir /opt/docker-compose-whl
cd /opt/docker-compose-whl
pip3 download -d ./ docker-compose

如果按上述方式下载完成后,在135上安装,可能会报如下错误:

Collecting paramiko>=2.4.2; extra == "ssh" (from docker[ssh]>=5->docker-compose)
Collecting pynacl>=1.0.1 (from paramiko>=2.4.2; extra == "ssh"->docker[ssh]>=5->docker-compose)
  Could not find a version that satisfies the requirement pynacl>=1.0.1 (from paramiko>=2.4.2; extra == "ssh"->docker[ssh]>=5->docker-compose) (from versions: )
No matching distribution found for pynacl>=1.0.1 (from paramiko>=2.4.2; extra == "ssh"->docker[ssh]>=5->docker-compose)

看提示是版本不对导致,经过多方排查,发现134上的pip3版本为21.x,而135是新装的系统,pip3版本是9.x,因此引发如上错误,为避免该错误的发生,将pip3的最新包也下载下来放在docker-compose-whl目录内,完整操作如下:

mkdir /opt/docker-compose-whl
cd /opt/docker-compose-whl
pip3 download -d ./ docker-compose
pip3 download -d ./ pip

然后拷贝到135上的/opt/docker-compose-whl目录内,在135上执行安装

# 升级pip
python3 -m pip install -U pip --no-index --find-links=/opt/docker-compose-whl
# 安装docker-compose
python3 -m pip install docker-compose --no-index --find-links=/opt/docker-compose-whl

此时即可安装成功

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值