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


Posted in Python onDecember 14, 2020

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打离线包及自动安装的过程详解(适用于保密的离线环境

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

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

(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/)

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

具体命令如下:

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

结果如下:

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

(5)pip download 下载离线包

具体命令如下:

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

结果如下图:

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

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

具体shell脚本命令如下:

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

说明:

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

相关目录结构如下图:

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

注:

python 2.6.6 升级到 2.7

centos 6自带的python 版本为2.6.6,需要升级到2.7,详情可参考:https://3water.com/article/202100.htm

【@2020/12/7,国内各大镜像似乎弃用CentOS 6了,参见:https://www.v2ex.com/t/733142】

到此这篇关于python 通过pip freeze、dowload打离线包及自动安装的过程详解(适用于保密的离线环境的文章就介绍到这了,更多相关python 打离线包及自动安装内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
Python实现删除Android工程中的冗余字符串
Jan 19 Python
深入理解Python中的元类(metaclass)
Feb 14 Python
浅谈Python中函数的参数传递
Jun 21 Python
Python中functools模块函数解析
Mar 12 Python
Python实现脚本锁功能(同时只能执行一个脚本)
May 10 Python
Python抽象和自定义类定义与用法示例
Aug 23 Python
Python面向对象之类和实例用法分析
Jun 08 Python
Django实现web端tailf日志文件功能及实例详解
Jul 28 Python
Python之指数与E记法的区别详解
Nov 21 Python
tensorflow 查看梯度方式
Feb 04 Python
python读取csv文件指定行的2种方法详解
Feb 13 Python
Python中递归以及递归遍历目录详解
Oct 24 Python
Pandas中DataFrame交换列顺序的方法实现
Dec 14 #Python
python中time、datetime模块的使用
Dec 14 #Python
全面介绍python中很常用的单元测试框架unitest
Dec 14 #Python
python读写数据读写csv文件(pandas用法)
Dec 14 #Python
详解Python中@staticmethod和@classmethod区别及使用示例代码
Dec 14 #Python
Python 找出英文单词列表(list)中最长单词链
Dec 14 #Python
Python 排序最长英文单词链(列表中前一个单词末字母是下一个单词的首字母)
Dec 14 #Python
You might like
对Session和Cookie的区分与解释
2007/03/16 PHP
Linux下创建nginx脚本-start、stop、reload…
2014/08/03 PHP
php+mysqli预处理技术实现添加、修改及删除多条数据的方法
2015/01/30 PHP
php 微信公众平台开发模式实现多客服的实例代码
2016/11/07 PHP
基于JQuery的6个Tab选项卡插件
2010/09/03 Javascript
javascript学习之闭包分析
2010/12/02 Javascript
jQuery获取注册信息并提示实现代码
2013/04/21 Javascript
jQuery EasyUI API 中文帮助文档和扩展实例
2016/08/01 Javascript
Bootstrap轮播插件使用代码
2016/10/11 Javascript
JavaScript数组去重的几种方法效率测试
2016/10/23 Javascript
ES6概念 Symbol.keyFor()方法
2016/12/25 Javascript
原生js实现轮播图的示例代码
2017/02/20 Javascript
flag和jq on 的绑定多个对象和方法(必看)
2017/02/27 Javascript
详解Vue.js分发之作用域槽
2017/06/13 Javascript
sublime text配置node.js调试(图文教程)
2017/11/23 Javascript
JavaScript常用8种数组去重代码实例
2020/09/09 Javascript
Vue-cli4 配置 element-ui 按需引入操作
2020/09/11 Javascript
JavaScript实现商品评价五星好评
2020/11/30 Javascript
python 类对象和实例对象动态添加方法(分享)
2017/12/31 Python
微信跳一跳自动运行python脚本
2018/01/08 Python
python实现猜数字小游戏
2020/03/24 Python
win7下python3.6安装配置方法图文教程
2018/07/31 Python
python 对给定可迭代集合统计出现频率,并排序的方法
2018/10/18 Python
Python函数定义及传参方式详解(4种)
2019/03/18 Python
python2.7 安装pip的方法步骤(管用)
2019/05/05 Python
python 应用之Pycharm 新建模板默认添加编码格式-作者-时间等信息【推荐】
2019/06/17 Python
使用CSS3的背景渐变Text Gradient 创建文字颜色渐变
2014/08/19 HTML / CSS
四年大学自我鉴定
2014/02/17 职场文书
优秀毕业生就业推荐信
2014/05/22 职场文书
超市开店计划书
2014/09/15 职场文书
工作检讨书范文
2015/01/23 职场文书
2015年党风廉政建设个人总结
2015/08/18 职场文书
三好学生主要事迹怎么写
2015/11/03 职场文书
本地通过nginx配置反向代理的全过程记录
2021/03/31 Servers
CSS 使用 resize 实现图片拖拽切换预览功能(强大功能)
2021/08/23 HTML / CSS
浅谈Vue的computed计算属性
2022/03/21 Vue.js