部署python脚本及其依赖项,包括本地安装的依赖项
我需要部署一个python脚本,该脚本需要混合使用公共(pip可安装)和“本地”(pip安装路径/to/local/package)包。我部署到的计算机将无法访问internet或访问本地软件包,但可能会有python。准备和部署都将在windows中完成 到目前为止,我的解决方案是创建一个venv:部署python脚本及其依赖项,包括本地安装的依赖项,python,pip,Python,Pip,我需要部署一个python脚本,该脚本需要混合使用公共(pip可安装)和“本地”(pip安装路径/to/local/package)包。我部署到的计算机将无法访问internet或访问本地软件包,但可能会有python。准备和部署都将在windows中完成 到目前为止,我的解决方案是创建一个venv: python-m-venv-myvenv 激活myvenv pip安装[可从pip获得软件包] pip安装[本地软件包] 那么我有两个选择: 1) 发送venv目录 将我的python脚本与
python-m-venv-myvenv
- 激活myvenv
pip安装[可从pip获得软件包]
pip安装[本地软件包]
- 将我的python脚本与venv目录一起发送(这样有人可以使用
myvenv\Scripts\python myscript.py
- 从myvenv create requirements.txt(
),它捕获我下载的任何软件包以及pip为它们下载的任何依赖项pip freeze>requirements.txt
- 下载依赖项的whl/zip文件
pip下载-r requirements.txt-d本地\u包\u文件——查找links=path/to/local/package/zip
- 使用myscript.py发送本地_包_文件目录,然后在我部署的计算机上执行以下操作:
python-m venv deployedenv
- 激活deployedenv
pip安装-r requirements.txt--无索引--查找links=local\u package\u文件
对于如何改进/简化,或者在何处中断,我们非常感谢您的建议。PyInstaller可能是您所需要的。它允许您将python脚本(或其集合)打包到windows可执行文件中。作为一个额外的好处,你甚至不需要在目标系统上安装Python。我去看看。我也考虑过docker,但是我有一个问题,就是在目标机器上安装docker,而不是在目标机器上安装python包。