一、应用场景

比如:对于数据安全要求比较严格的机房,服务器是不允许上网的。那么我现在开发了一套python程序,需要一些模块,怎么运行?

二、离线包制作

有2个解决方案:

1. 使用requirement.txt离线安装打包好的包whl

这种方案,我一直没有测试成功,为什么?

因为某些whl文件,使用pip download下载不来,提示not found

好吧,我果断放弃了!

2. 使用虚拟环境virtualenv

我测试了一下,运行正常!

注意:必须保证服务器,已经安装好了python3和pip3。

如果是ubuntu系统,需要离线安装,请参考链接:

下面详细介绍整个过程!

虚拟环境virtualenv

环境说明

系统是 ubuntu-16.04.5-server-amd64,默认已经安装好了python3,版本为3.5.2

已经安装好了python3-pip,版本为8.1.1

sudo apt-get install -y python3-pip

如果提示

E: Could not get lock /var/lib/dpkg/lock - open (11: Resource temporarily unavailable)

E: Unable to lock the administration directory (/var/lib/dpkg/), is another process using it?

使用以下命令处理

sudo rm /var/cache/apt/archives/lock

sudo rm/var/lib/dpkg/lock

清理缓存,也就是/var/cache/apt目录下的deb包

apt-get clean all

安装virtualenv

sudo pip3 install virtualenv

提示:

You are using pip version 8.1.1, however version 18.1 is available.

You should consider upgrading via the 'pip install --upgrade pip' command.

千万不要执行 pip install --upgrade pip

否则会造成pip崩溃!

创建虚拟目录

sudo mkdir /virtualenvs

创建虚拟环境

进入虚拟目录,创建虚拟环境venv

注意:下面的红色位置,需要根据自己的环境修改

cd /virtualenvssudo /usr/local/bin/virtualenv -p /usr/bin/python3 --no-site-packages venv

语法说明:

-p 指定python版本

–no-site-packages表示不包括系统全局的Python安装包,这样会更令环境更干净

指定豆瓣源

#创建目录mkdir ~/.pip

# 编辑配置文件vi ~/.pip/pip.conf

内容如下:

[global]

index-url = http://pypi.douban.com/simple

trusted-host = pypi.douban.com

安装相关模块

比如安装模块paramiko

sudo /virtualenvs/venv/bin/pip3 install paramiko

打包虚拟环境

比如打包venv

sudo tar zcvf venv.tar.gz venv

三、离线测试

环境说明

系统是 ubuntu-16.04.5-server-amd64,默认已经安装好了python3,版本为3.5.2

拷贝文件到根目录

插入U盘或光盘,将venv.tar.gz复制到根目录下,解压

sudo mkdir /virtualenvssudo tar zxvf venv.tar.gz -C /virtualenvs/

进入python测试

/virtualenvs/venv/bin/python

导入模块 paramiko,实例化SSHClient

>>>import paramiko>>>paramiko.SSHClient()

如果没有报错,说明成功了

python环境离线复制_Python 离线环境相关推荐

  1. 断网python第三方库安装_Python离线断网情况下安装numpy、pandas和matplotlib等常用第三方包...

    联网情况下在命令终端CMD中输入"pip install numpy"即可自动安装,pandas和matplotlib同理一样方法进行自动安装. 工作的电脑不能上外网,所以不能通过 ...

  2. python开发环境比较好_python开发环境比较好,python 集成开发环境哪个好

    python 集成开发环境哪个好 PyCharm是一种Python IDE,带有一整套可以帮助用户在使用Python语言开发时提高其效率的工具,比如调试.语法高亮.Project管理.代码跳转.智能提 ...

  3. python list 深复制_Python中list的复制及深拷贝与浅拷贝探究

    在Python中,经常要对一个list进行复制.对于复制,自然的就有深拷贝与浅拷贝问题.深拷贝与浅拷贝的区别在于,当从原本的list复制出的list之后,修改其中的任意一个是否会对另一个造成影响,即这 ...

  4. python列表浅复制_Python列表的深复制和浅复制示例详解

    一.深复制与浅复制 列表是Python中自带的一种数据结构,在使用列表时,拷贝操作不可避免,下面简单讨论一下列表的深复制(拷贝)与浅复制 首先看代码: l1 = [5, 4, 3, 2, 1] # 用 ...

  5. python环境变量配置_python+ pycharm 环境安装 + pycharm使用

    一.下载和安装python 1.可以搜索python官网找到官方链接点击进入 2.也可以用以下链接点击进入:https://www.python.org/ 3.进入python后把鼠标移到downlo ...

  6. python没有pil模块_Python离线安装PIL 模块的方法

    Python离线安装PIL 模块的方法 发布时间:2020-09-02 00:14:51 来源:脚本之家 阅读:122 作者:那. python的库一般都用pip安装. 但是有时候也会出现在线安装失败 ...

  7. python web环境傻瓜搭建_python——web 环境搭建

    1.安装引用第三方库 selenium pip install selenium 2.下载浏览器驱动(驱动版本和浏览器版本要对应参考链接 http://npm.taobao.org/mirrors/c ...

  8. python工程代码语法_python编码环境安装与基本语法

    一.pycharm的基本使用 1.python以及pycharm的安装 python的版本选择:3.x版本就行 pycharm的版本选择:社区版就够用 pycharm只是一个编写工具,python才是 ...

  9. python 编译器spyder 安装_Python开发环境Spyder安装教程

    Spyder(Scientific PYthon Development EnviRonment)是一个强大的交互式 Python 语言开发环境,提供高级的代码编辑.交互测试.调试等特性,支持包括 W ...

最新文章

  1. 代码改变世界,这 72 张面孔牛逼了!!!
  2. 再见!人人影视...
  3. java 递归原理_Java中递归原理实例分析
  4. sts在文件夹中显示_工作中很多问题,巧用Windows 10任务栏,几分钟快速解决
  5. JavaWeb --第四章Maven详解
  6. javascript数组类型
  7. 火星人(洛谷-P1088)
  8. 渐进增强和优雅降级有什么区别
  9. 小米这个系列绝了!7款之后再添新机,完全分不清
  10. JQuery1.11版本对prop和attr接口的含义分离导致问题分析
  11. axios post json_助你解析Axios原理之一:如何实现多种请求方式
  12. 史上最详细MySQL5.5复制配置步骤,与以前版本的有所不同
  13. HDU1846 Brave Game
  14. 帝国cms插件-百度收录api模式插件
  15. 力扣每日一题(九——保持城市天际线)
  16. 清华大学立功了!“破冰”芯片核心技术
  17. 文献阅读-Clinical and Biological subtypes of B-cell lymphoma revealed by microenvironment signature
  18. ps3运行linux,PS3上的PC系统Linux不是摆设!
  19. LAC+CELLID定位手机位置
  20. 二阶微分方程的matlab解法,以动力学方程为例

热门文章

  1. Xshell登录Ubuntu12.04
  2. Log4Net组件的应用详解
  3. CocoaPods 引用第三方库导致的模拟器可以运行,但是真机不可以运行问题。
  4. jQuery Mobile基础
  5. LIST组件使用总结
  6. JAVA编译异常处理:java.lang.OutOfMemoryError: PermGen space
  7. Spring RestTemplate中文乱码解决方案
  8. SQL Server转义下划线
  9. 执行在一行中组合多个Linux命令
  10. ArrayList和Vector有什么区别?