python virtualenv打包_使用virtualenv发布Python程序

本文介绍了如何使用virtualenv创建一个可移植的Python环境,包括创建新环境、安装依赖、处理路径问题,以及如何在目标环境中激活和运行打包的程序,以实现离线部署。
摘要由CSDN通过智能技术生成

客户环境不能上网,开始想把所有依赖包下载下来,进入客户环境进行安装。但为了避免出差,部署工作交给其他同事了,我想还是需要更简单的方式。

实验了一下virtualenv是可以的

1. 创建一个新的环境(改为virtualenv --no-site-packages ENV,不复制全局的包进来)

22661975f297c5a0d5691da26cda4c3c.png

新环境在目录ENV中

2. 进入到新环境

79fb8ea961e90fdd71259d1e21cb8b00.png

3. 安装程序及其依赖包

把我们的程序考到pub3目录下

并执行pip install -r requirements.txt安装所有的依赖包

4. 让ENV这个目录可以改变位置

Make an EXISTING virtualenv environment relocatable.

This fixes up scripts and makes all .pth files,

relative  (改成相对路径)

167f747ccfd49b5f93ca80c313dfe43f.png

这一步是必要的,如果不做,必须保证新的环境上ENV所在的路径与打包机完全一致。因为,像pip这样的工具内会有绝对路径,如python解析器地址。

如果执行了relocatable就可以至于任意目录了

5. 修改ENV/bin/activate中存在的绝对路径

4081a96e16e8d701703b207dcc9b25cf.png

改为

0af742a5b177c629a69bec2c8e8d0e08.png

6. 压缩pub3目录发布

-----------------------------------------------

在客户环境部署

7.  解压并进入pub3

8. 进入python虚拟环境

cd xxx/xxx/ENV

source  bin/activate

若第5步改成了pwd的话,一定要进入ENV目录后,执行source  bin/active。否则无法正确进入虚拟环境

执行完后,测试一下虚拟环境,看是否引用的是虚拟环境中的python/pip等

which python

which pip

9. 运行程序就可以了

使用virtualenv可以创建一个隔离的Python环境,以便在同一台机器上同时开发多个Python应用程序。首先,你需要安装virtualenv,可以使用命令"pip install virtualenv"进行安装。\[2\]安装完成后,你可以使用以下命令创建一个虚拟环境: ``` $ virtualenv venv ``` 其中,"venv"是虚拟环境的目录名,你可以根据需要自定义。创建完成后,你可以使用以下命令激活虚拟环境: ``` $ source venv/bin/activate ``` 激活虚拟环境后,你可以在该环境中安装所需的Python包,并运行你的应用程序。当你完成开发后,可以使用以下命令退出虚拟环境: ``` $ deactivate ``` 这样,你就可以在不同的Python环境中独立地开发和运行应用程序,避免了不同应用程序之间的库不兼容问题。\[3\]如果你想指定Python版本,可以使用"--python"参数来指定Python解释器,例如: ``` $ virtualenv --python=/usr/local/python3.5.3/bin/python venv ``` 这样就可以创建一个使用指定Python版本的虚拟环境。\[1\]希望这些信息对你有帮助! #### 引用[.reference_title] - *1* *2* [python虚拟环境--virtualenv](https://blog.csdn.net/weixin_34186950/article/details/94236222)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insert_down1,239^v3^insert_chatgpt"}} ] [.reference_item] - *3* [python-virtualenv使用](https://blog.csdn.net/weixin_44017425/article/details/109000860)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insert_down1,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值