51工具盒子

依楼听风雨
笑看云卷云舒,淡观潮起潮落

使用 pip 离线复制 python 运行环境

python 运行时会有不同环境需求,在其他机器部署时需要重新配置python环境,当需要离线部署时可以使用pip的离线复制环境的功能。

工作思路 {#工作思路}

  1. 获取环境所需的库和对应版本
  2. 确定运行平台(Linux,Windows)
  3. 在指定平台下载库的离线包
  4. 将库列表与离线包迁移到新机器
  5. 在新机器上安装python
  6. 安装离线包
  7. 程序调试

具体操作流程 {#具体操作流程}

获取环境所需的库和对应版本 {#获取环境所需的库和对应版本}

  • 在源机器安装pipreqs

pipreqs可以帮你找到当前项目的所有组件及其版本。

  • 获取库与版本

成功后会在当前目录生成 requirements.txt文件

例如:

下载库的离线包 {#下载库的离线包}

  • 获取requirements.txt后下载对应包,使用pip download命令将包存入packages文件夹

目标路径不是绝对路径有可能出问题

也可以不用手动创建文件夹,pip会自动创建对应文件夹

  • 也可以下载指定的包

**注意:**这个命令如果中途遇到问题报错没有执行完则不会将所有之前下载的包放到目标文件夹,需要逐个解决问题后才会移动到指定位置

Tips:建议将pip源换成阿里云,成功率高很多

上述包文件下载后的结果

安装离线包 {#安装离线包}

| 选项 | 含义 | |--------------------|-------------------------------------------------| | --no-index | 忽略包索引(只查看--find-links) | | --find-links | 指向 URL,html 文件 tar.gz,whl 或者目录,不支持指向VCS项目URL的链接 | | --ignore-installed | 忽略已安装的软件包,覆盖它们 |

在线重现环境 {#在线重现环境}

在有网络的情况下可以使用离线生成的 requirements.txt 文件重建新环境

pip 会逐个安装文件中指定版本的包

参考资料 {#参考资料}



文章链接:
https://www.zywvvd.com/notes/environment/pip/pip-env-install-off-line/pip-env-install-off-line/

赞(0)
未经允许不得转载:工具盒子 » 使用 pip 离线复制 python 运行环境