python 通过pip freeze、dowload打离线包及自动安装【适用于保密的离线环境】

摘要:
本文仅描述pip如何通过其免费命令下载脱机包。选择要下载[CoderBaby]的二进制文件的相关下载地址。(2) 在rpm下安装pip脱机包rpm ivhpython2-pip-8.1.2-10.el7.noarch.rpm(rpm脱机包的完整路径名)。(3) 通过旧版本的pipinstall命令将pip升级至最新版本。

python 通过pip freeze、dowload打离线包及自动安装【适用于保密的离线环境】第1张

python的pip是其包管理工具,相当方便好用。本文只介绍pip 如何通过其freeze命令打离线包,及其离线包的安装脚本。这个知识点,特别适用于不适合连通互联网,设备需要物理隔绝,保密要求严格的客户环境。

环境

操作系统: Centos 7.7

python 版本: 2.7

客户网络环境: 离线

研发网络环境:联网

  • pip 安装

(1)下载rpm包

首先研发环境(联网),去 https://pkgs.org/download/python-pip 选择合适的pip rpm离线包下载,如下图:

python 通过pip freeze、dowload打离线包及自动安装【适用于保密的离线环境】第2张

选择一个rpm链接,点击进去,然后在下载模块,选择二进制文件相关下载地址下载即可【CoderBaby】,如下图:

python 通过pip freeze、dowload打离线包及自动安装【适用于保密的离线环境】第3张

 (2)rpm 安装pip离线包

rpm -ivh python2-pip-8.1.2-10.el7.noarch.rpm  (rpm离线包完整路径名

(3)升级pip

通过旧版的pip install 命令升级pip到最新版本,具体如下:

pip install packages/pip-20.2.3-py2.py3-none-any.whl (从pypi官网下载.whl包: https://pypi.org/project/pip/#files

(4)pip freeze 将系统已安装的包按照需要的格式打包

具体命令如下:

pip freeze >requirements.txt  (重定向,并且指定输出文件名称、格式、路径)

结果如下:

python 通过pip freeze、dowload打离线包及自动安装【适用于保密的离线环境】第4张

 (5)pip download 下载离线包

具体命令如下:

pip download -d packages -r requirements.txt (将requirements.txt里指定的包名和版本—【可根据需要,编辑requirements.txt,删除不需要打包的包】打包到默认packages文件夹下)

结果如下图:

python 通过pip freeze、dowload打离线包及自动安装【适用于保密的离线环境】第5张

(6)通过shell脚本安装离线包

具体shell脚本命令如下:

pip install --no-index --find-links=packages -r requirements.txt 

说明:

首先将packages文件夹和requirements.txt拷贝至离线服务器:packages文件夹放在任意目录下,requirements.txt放在同级目录

相关目录结构如下图:

python 通过pip freeze、dowload打离线包及自动安装【适用于保密的离线环境】第6张

注:

  • python 2.6.6 升级到 2.7

centos 6 自带的python 版本为2.6.6,需要升级到2.7,详情可参考:https://www.cnblogs.com/gjc592/p/9223005.html 

【@2020/12/7国内各大镜像弃用CentOS 6了,因为截至2020/11/30,CentOs6停止维护更新了,参见:https://www.v2ex.com/t/733142

免责声明:文章转载自《python 通过pip freeze、dowload打离线包及自动安装【适用于保密的离线环境】》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇mysql事务详解Spring 中一个常用的反射类库ReflectionUtils 绝对领域 ITeye技术网站下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

用树莓派做3G无线路由器

第一篇博客献给我做了很长时间的课程设计,也就是题目所说的3G无线路由器。本次开发所使用的开发平台为树莓派开发板,下面进入正题..... 目标:将树莓派设置成为一个3G无线路由器,通过华为的E261拨号上网。 工具:树莓派开发板,3G无线上网卡E261,无线网卡RT5370,   步骤: 一、转换E261的模式 1、查看连接的USB设备 pi@raspber...

Bundle是个好东西

这里说的Bundle,是software library范畴的,我把它定义为: 一系列版本兼容的软件库。 对于比较小的项目,用的library不多,升级不勤快,这不是个问题,但是对于大型项目,bundle是非常有用的 - 当然,这需要build system的支持。(但加一个这样的功能蛮简单的)   bundle的格式大概为一个library=versi...

安装tensorflow

Installing with Virtualenv Install pip and Virtualenv by issuing one of the following commands:   $ sudo apt-get install python-pip python-dev python-virtualenv # for Python 2.7...

Windows上安装-kivy

原文:https://kivy.org/doc/stable/installation/installation-windows.html#install-win-dist 如果您使用Anaconda,则可以使用以下命令安装kivy: $ conda install kivy -c conda-forge 否则,请继续下面的步骤以在本机Python安装...

WinDbg调试分析 asp.net站点 CPU100%问题

 公司为了节省成本,最近有一批服务器降了配置,CPU从8核降到了2核。本身是小站点,访问量也不高,CPU总是会飙到100%而且可以一直持续几个小时,直接强制结束进程可以维持几个小时,几个小时后又一样,运维那边总是受到cpu的警告短信很是苦恼,按理来说就算降低了配置也不至于会让CPU一直100%。    以下就分享本次使用 WinDbg 找出 CPU 100...

开源堡垒机_jumpserver

前介 1、jumperver介绍 ​ Jumpserver 是一款由Python编写开源的跳板机(堡垒机)系统,实现了跳板机应有的功能。基于ssh协议来管理,客户端无需安装agent。 ​ 特点: ​ 完全开源,GPL授权 Python编写,容易再次开发 实现了跳板机基本功能,认证、授权、审计 集成了Ansible,批量命令等 支持WebTerminal...