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

目的

项目需要离线安装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

此时即可安装成功

猜你喜欢

转载自blog.csdn.net/HYESC/article/details/123554234