Virtualenv在单个可执行文件中

时间:2016-10-10 21:46:44

标签: python linux virtualenv executable

我目前有一个可执行文件,它在zipfile中运行Python代码:https://blogs.gnome.org/jamesh/2012/05/21/python-zip-files/

关于这个的好处是我发布了一个包含应用程序的文件。问题出现在依赖关系中。我试图在自定义位置使用pip安装文件,当我将它们嵌入zip中时,我总是遇到导入问题或最终取决于主机包的问题。

然后我开始研究虚拟环境,以此来确保软件包依赖性。但是,似乎目标计算机上的典型工作流程是获取激活脚本并在virtualenv中运行代码。我想要做的是拥有一个包含Python脚本及其所有依赖项的文件,并且用户只需执行该文件即可。鉴于Python解释器实际上与virtualenv一起打包,这是否可能?是否可以从zip文件中调用Python解释器?从Python的角度来看,推荐的方法是什么?

1 个答案:

答案 0 :(得分:-1)

您可以创建一个bash脚本来创建虚拟环境并运行python脚本。

!#/bin/bash
virtualenv .venv
.venv/bin/pip install <python packages>
.venv/bin/python script