如何将现有的Django应用程序转换为virtualenv?

时间:2018-02-17 22:01:48

标签: python django virtualenvwrapper

关于这个问题有很多问题,而且我已经做了很多尝试并且可能已经搞砸了......

但是让我坚持真正的问题:我有一个初出茅庐的Django应用程序,我希望从未来支持软件的变化中进行隔离。我认为在虚拟环境下投入是一个答案。我喜欢指导,甚至只是指向正确的Howto(一个关于迁移,而不是全新安装)。

我的环境是Ubuntu 16.04.3 LTS,apache2,python3.5和django 2.0。我将升级到下一个LTS,这就是为什么我要将此应用程序与更改隔离开来。

复杂的事情是python2和python 3都在这里,而pyhton2是默认的(当你只需要调用" python"时会得到的东西。这会让事情变得奇怪,例如,因为pip3是使用默认的python,所以' pip3 freeze'的输出与我在python3下运行时的输出非常不同,我不知道原因的细节。

过去失败的是我尝试按照针对新安装的操作系统的指导进行操作。还有什么,可能是因为我做错了什么,pip3生活在我的$ HOME / .local / bin / pip3中。我不知道如何解除这个。

1 个答案:

答案 0 :(得分:2)

如果您希望在venv内部或在venv内的另一台机器上复制现有环境,请在原始环境中执行此命令:

pip freeze > requirements.txt

在另一台机器上或虚拟环境内(运行path/to/venv/bin/activate后),执行:

pip install -r path/to/requirements.txt

这应该保存并恢复您的环境。